libinet++
A networking library for humans that code in C++
 All Classes Functions
sockets.h
1 
8 #ifndef LIBINET_SOCKETS_H_
9 #define LIBINET_SOCKETS_H_
10 
11 #include <string>
12 
13 typedef bool (*HandlerCallback)(std::string);
14 
15 class Socket {
16  private:
17  int socket_descriptor;
18  bool connected;
19  pthread_t thread;
20  HandlerCallback handler_callback;
21 
22  std::string server;
23  unsigned int port;
24 
25  static void *handle_recv_thread_helper(void *context);
26 
27  public:
28  // Constructors
29  Socket();
30  Socket(std::string _server, unsigned int _port, HandlerCallback _handler_callback);
31 
32  // Connectors?
33  void connect();
34  void connect(std::string server, unsigned int port, HandlerCallback _handler_callback);
35 
36  void *receive();
37  int send_data(std::string data);
38  void close_connection();
39 };
40 
41 #endif