00001 #ifndef ASRVR_H
00002 #define ASRVR_H
00003
00043 #include "ix_tools.h"
00044 #include "xvalue.h"
00045 #include "asintf.h"
00046 #include "i_asintf.h"
00047
00049 #define AS_CLIENT_MAX 512
00050
00052 #define AS_FILTER_MAX 64
00053
00055 #define AS_OUT_QUEUE_MAX 8*1024
00056
00058 #define AS_IN_QUEUE_MAX 8*1024
00059
00061 #define LISTENER_MAX 32
00062
00064 #define NET_AS_HOST_ENV "NET_AS_HOST"
00065
00067 #define NET_AS_PORT_ENV "NET_AS_PORT"
00068
00070 #define ASRVR_TCP_PORT 5005
00071
00072 #define ASRVR_UDP_PORT 5006
00073
00074 #define MAX_SERVICES 8
00075
00076 #define IX_V_TRIGGER 0x02
00077 #define IX_V_AS_INTF 0x04
00078 #define IX_V_CLIENT 0x08
00079 #define IX_V_MSG 0x10
00080 #define IX_V_ALARM_NOTIFY 0x20
00081 #define IX_V_ALARM_RECEIVED 0x40
00082 #define IX_V_XFER 0x80
00083 #define IX_V_DEBUG 0x0100
00084
00085 typedef struct
00086 {
00087 char *myproc;
00088 int myudpport;
00089 int mytcpport;
00090 int mqevid;
00091 int daemon;
00092 ix_list_t *plist;
00093 ix_list_t *pclient_list;
00094 int verbose;
00095 ix_msg_queue_t *pmq;
00096 xf_refl_t *service_l[MAX_SERVICES];
00097 ix_event_t *ptev;
00098 ix_timer_t *pt;
00099 ix_cs_t *precmut;
00100 ix_thread_t *preceiver;
00101 int trun_f;
00102 long long actr;
00103 int queueCountSum;
00104 long long load_10_ctr;
00105 long long load_60_ctr;
00106 long long load_600_ctr;
00107 } gl_data;
00108
00109
00110 #ifdef __cplusplus
00111 extern "C" {
00112 #endif
00113
00114
00115 int alarm_receiver_start();
00116
00117
00118 int process_alarm( void *);
00119
00120
00121 int mkclientpath( char *buf, int buflen, int node, char *client );
00122 int set_client_uv_infos( int node, char *proc, int fd, long long int no, int queueCount,
00123 int queueOverrun, int perFlush );
00124
00125 #ifdef __cplusplus
00126 }
00127 #endif
00128
00129 #endif