aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/libraries/SledjHamr.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libraries/SledjHamr.h')
-rw-r--r--src/libraries/SledjHamr.h47
1 files changed, 47 insertions, 0 deletions
diff --git a/src/libraries/SledjHamr.h b/src/libraries/SledjHamr.h
index 07018a1..467fcc6 100644
--- a/src/libraries/SledjHamr.h
+++ b/src/libraries/SledjHamr.h
@@ -8,9 +8,56 @@
8#include <Ecore_Con.h> 8#include <Ecore_Con.h>
9 9
10 10
11typedef struct _Connection Connection;
12
13typedef Eina_Bool (* streamParser)(void *data, Connection *connection, char *SID, char *command, char *arguments);
14
15typedef enum
16{
17 CT_CLIENT,
18 CT_SERVER
19} connType;
20
21struct _ConnServer
22{
23 Ecore_Con_Server *server;
24 char *serverCommand;
25 int count, hackyCount;
26};
27
28struct _ConnClient
29{
30 Ecore_Con_Client *client;
31 Connection *myServer;
32};
33
34struct _Connection
35{
36 connType type;
37 union
38 {
39 struct _ConnServer server;
40 struct _ConnClient client;
41 } conn;
42 char *name; // For log entries and such.
43 char *address;
44 int port;
45 Eina_Strbuf *stream;
46 Eina_Hash *commands;
47// streamParser *func;
48 // Callbacks.
49 void *pointer;
50 Ecore_Event_Handler_Cb _add, _data, _del;
51 Ecore_Event_Handler *add, *data, *del;
52 streamParser unknownCommand;
53};
54
55
11Ecore_Con_Server *reachOut(char *address, int port, void *data, Ecore_Event_Handler_Cb _add, Ecore_Event_Handler_Cb _data, Ecore_Event_Handler_Cb _del); 56Ecore_Con_Server *reachOut(char *address, int port, void *data, Ecore_Event_Handler_Cb _add, Ecore_Event_Handler_Cb _data, Ecore_Event_Handler_Cb _del);
12void *addMessage(Eina_Clist *list, size_t size, const char *message, ...); 57void *addMessage(Eina_Clist *list, size_t size, const char *message, ...);
13void sendBack(Ecore_Con_Client *client, const char *SID, const char *message, ...); 58void sendBack(Ecore_Con_Client *client, const char *SID, const char *message, ...);
14void sendForth(Ecore_Con_Server *server, const char *SID, const char *message, ...); 59void sendForth(Ecore_Con_Server *server, const char *SID, const char *message, ...);
15 60
61Connection *openArms(char *name, const char *address, int port, void *data, Ecore_Event_Handler_Cb _add, Ecore_Event_Handler_Cb _data, Ecore_Event_Handler_Cb _del, streamParser _parser);
62
16#endif 63#endif