00001
00021 #ifndef _SR_EVENTS_H_
00022 #define _SR_EVENTS_H_
00023
00024 #include "parser/msg_parser.h"
00025
00026 #define SREV_NET_DATA_IN 1
00027 #define SREV_NET_DATA_OUT 2
00028 #define SREV_CORE_STATS 3
00029 #define SREV_CFG_RUN_ACTION 4
00030 #define SREV_PKG_SET_USED 5
00031 #define SREV_PKG_SET_REAL_USED 6
00032 #define SREV_NET_DGRAM_IN 7
00033 #define SREV_TCP_HTTP_100C 8
00034 #define SREV_TCP_MSRP_FRAME 9
00035
00036
00037 typedef int (*sr_event_cb_f)(void *data);
00038
00039 typedef struct sr_event_cb {
00040 sr_event_cb_f net_data_in;
00041 sr_event_cb_f net_data_out;
00042 sr_event_cb_f core_stats;
00043 sr_event_cb_f run_action;
00044 sr_event_cb_f pkg_set_used;
00045 sr_event_cb_f pkg_set_real_used;
00046 sr_event_cb_f net_dgram_in;
00047 sr_event_cb_f tcp_http_100c;
00048 sr_event_cb_f tcp_msrp_frame;
00049 } sr_event_cb_t;
00050
00051 void sr_event_cb_init(void);
00052 int sr_event_register_cb(int type, sr_event_cb_f f);
00053 int sr_event_exec(int type, void *data);
00054 int sr_event_enabled(int type);
00055
00056 #endif