#ifndef _SOCK_H_ #define _SOCK_H_ #include #include //isdigit #include //atoi #include //memset,strcpy,strlen #include //strerror,errno #include //close, #include //sleep, typedef struct sockaddr_in SOCKADDR_IN; #ifdef WIN32 #include #include #define sleep(x) Sleep((x) * 1000) #define socketerror WSAGetLastError() #else #define closesocket(c) close(c) #include //sockaddr_in,inet_addr, #include //socket, #include //socket,inet_addr,send,recv, #include //inet_addr, #include //send,recv, #include //gethostbyname, #define socketerror errno #endif class c_sock { private: int m_taille; //taille de recv int m_sock; //le socket SOCKADDR_IN m_sin; char m_sockerror[512]; //contien l'erreur void setsockerror(); //copi l'erreur public: c_sock(); ~c_sock(); bool init(); //initialise la socket bool setadresse(char *adresse); //défini l'ip void setport(unsigned short int port); //défini le port bool setport(char *buffer); bool connexion(); //pour se connecter bool send(char *buffer); //pour envoyer bool recv(char *buffer, int size); //pour recevoir void close(); //pour fermer la socket char* getsockerror(); //renvoi m_sockerror int gettaille(); //retourne m_taille }; #endif