diff -r 906e72caea7b -r 7c2eb284f9f1 project_files/frontlib/ipc.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/project_files/frontlib/ipc.h Mon Jun 04 21:12:20 2012 +0200 @@ -0,0 +1,39 @@ +#ifndef IPC_H_ +#define IPC_H_ + +#include "buffer.h" + +#include +#include +#include + +struct _flib_ipc; +typedef struct _flib_ipc *flib_ipc; + +typedef enum { + GAME_END_FINISHED, + GAME_END_INTERRUPTED, + GAME_END_HALTED +} flib_GameEndType; + +flib_ipc flib_ipc_create(bool recordDemo, const char *localPlayerName); +void flib_ipc_destroy(flib_ipc *ipcptr); + +void flib_ipc_onConnect(flib_ipc ipc, void (*callback)(void* context), void* context); +void flib_ipc_onDisconnect(flib_ipc ipc, void (*callback)(void* context), void* context); +void flib_ipc_onConfigQuery(flib_ipc ipc, void (*callback)(void* context), void* context); +void flib_ipc_onEngineError(flib_ipc ipc, void (*callback)(void* context, const uint8_t *error), void* context); +void flib_ipc_onGameEnd(flib_ipc ipc, void (*callback)(void* context, int gameEndType), void* context); +void flib_ipc_onChat(flib_ipc ipc, void (*callback)(void* context, const uint8_t *messagestr, int teamchat), void* context); +void flib_ipc_onEngineMessage(flib_ipc ipc, void (*callback)(void* context, const uint8_t *message, int len), void* context); + +int flib_ipc_send_raw(flib_ipc ipc, void *data, size_t len); +int flib_ipc_send_message(flib_ipc ipc, void *data, size_t len); +int flib_ipc_send_messagestr(flib_ipc ipc, char *data); + +uint16_t flib_ipc_port(flib_ipc ipc); +flib_constbuffer flib_ipc_getdemo(flib_ipc ipc); + +void flib_ipc_tick(flib_ipc ipc); + +#endif /* IPC_H_ */