00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef __AWHANDLER_REPLACECHAR__
00023 #define __AWHANDLER_REPLACECHAR__
00024
00025 #include "monitor.h"
00026 #include "wire.h"
00027
00028 #include "regexmatch.h"
00029
00110
00111
00112
00113
00114
00118 typedef struct {
00119
00120 byte_t
00121 *from;
00122
00123 byte_t
00124 to;
00125
00126 aw_event_sig_t
00127 copy;
00128
00129 } aw_replacechar_tr_filter_t;
00130
00131
00135 typedef struct {
00136
00137 aw_handler_t
00138 handler_header;
00139
00140 u_int32_t
00141 nfilters;
00142
00143 aw_replacechar_tr_filter_t
00144 *filters;
00145
00146 } aw_replacecharhandler_t;
00147
00148
00160 aw_replacecharhandler_t *aw_create_replacecharhandler(u_int32_t nfilters,
00161 aw_replacechar_tr_filter_t *filters,
00162 u_int32_t alternate,
00163 int32_t (*regevent)(aw_handler_t *h, aw_address_t *eventid, u_int32_t index),
00164 int32_t (*regmaskevent)(aw_handler_t *h, aw_address_t *eventid, u_int32_t index),
00165 const aw_alarm_sched_t *sched,
00166 aw_logger_t *logger);
00167
00168
00173 void aw_free_replacecharhandler(aw_replacecharhandler_t *h);
00174
00178 aw_handler_t *aw_wire_replacecharhandler(aw_wire_mkhandler_args_t *args);
00179
00180
00181 #endif
00182