| 123456789101112131415161718192021222324252627282930313233343536373839 | 
#ifndef WEBSOCKCALLBACKS_H_INCLUDED#define WEBSOCKCALLBACKS_H_INCLUDED#include "civetweb.h"#ifdef __cplusplusextern "C" {#endiftypedef struct tWebSockInfo {    int webSockState;    unsigned long initId;    struct mg_connection *conn;} tWebSockInfo;#define MAX_NUM_OF_WEBSOCKS (256)typedef struct tWebSockContext {    int runLoop;    void * thread_id;    tWebSockInfo *socketList[MAX_NUM_OF_WEBSOCKS];} tWebSockContext;void websock_init_lib(const struct mg_context *ctx);void websock_exit_lib(const struct mg_context *ctx);void websock_send_broadcast(struct mg_context *ctx, const char * data, int data_len);void websocket_ready_handler(struct mg_connection *conn);int websocket_data_handler(struct mg_connection *conn, int flags, char *data, size_t data_len);void connection_close_handler(const struct mg_connection *conn);#ifdef __cplusplus}#endif#endif
 |