6#ifndef MPDWEBSCREENSHOTS_H
7#define MPDWEBSCREENSHOTS_H
16#define BUFFER_SIZE 512
17#define MAX_FILE_SIZE 1024*1024
18#define MAX_CONNECTIONS 3
36 MpdWebScreenshots(
const char* name,
char* output_dir,
bool isWebServer =
false, Int_t iVerbose = 0);
44 virtual void Exec(Option_t* option);
53 void SetMultiFiles(
bool is_multi_files) { isMultiFiles = is_multi_files; }
55 void SetPort(
int NumberPort) { web_port = NumberPort; }
63 static int daemonize();
64 static int sendString(
const char* message,
int socket);
65 static void sendHeader(
const char* Status_code,
char* Content_Type,
int TotalSize,
int socket);
66 static void sendHTML(
char* statusCode,
char* contentType,
char* content,
int size,
int socket);
67 static void sendFile(FILE* fp,
int connecting_socket);
68 static int scan(
char* input,
char* output,
size_t start,
size_t max);
69 static int checkMime(
char* extension,
char* mime_type);
70 static int getHttpVersion(
char* input,
char* output);
71 static int GetExtension(
char* input,
char* output,
size_t max);
72 static int handleHttpGET(
char* input, TString output_dir,
int connecting_socket);
73 static int getRequestType(
char* input);
74 static int receive(
int connecting_socket, TString output_dir);
75 static int acceptConnection(
int currentSocket, TString output_dir);
76 static int start(
int webPort, TString output_dir);
77 static int start_server(
void* ptr);
friend F32vec4 max(const F32vec4 &a, const F32vec4 &b)
void SetPort(int NumberPort)
void SetVerbose(Int_t iVerbose)
virtual void Exec(Option_t *option)
MpdWebScreenshots(const char *name, char *output_dir, bool isWebServer=false, Int_t iVerbose=0)
virtual void SetParContainers()
void SetFormatFiles(int i_format_files)
virtual ~MpdWebScreenshots()
void SetMultiFiles(bool is_multi_files)
virtual InitStatus Init()