00001
00044 #ifndef __LIB3195_SRAPI_H_INCLUDED__
00045 #define __LIB3195_SRAPI_H_INCLUDED__ 1
00046
00047 #ifdef __cplusplus
00048 extern "C" {
00049 #endif
00050
00051 #define srAPICHECKVALIDOBJECT(x) {assert(x != NULL); assert(x->OID == OIDsrAPI);}
00052 struct srSLMGObject;
00053
00054 struct srAPIObject
00058 {
00059 srObjID OID;
00060 struct sbChanObject *pChan;
00061 struct sbNVTRObject *pProfsSupported;
00062 struct sbSessObject *pSess;
00063 void *pUsr;
00065 srOPTION3195Profiles iUse3195Profiles;
00066 # if FEATURE_LISTENER == 1
00067 void (*OnSyslogMessageRcvd)(struct srAPIObject* pAPI, struct srSLMGObject *pSyslogMesg);
00068 struct sbLstnObject *pLstn;
00069 # endif
00070 };
00071 typedef struct srAPIObject srAPIObj;
00072
00080 srAPIObj* srAPIInitLib(void);
00081
00089 srRetVal srAPIOpenlog(srAPIObj *pThis, char* pszRemotePeer, int iPort);
00090
00091
00107 srRetVal srAPICloseLog(srAPIObj *pThis);
00108
00120 srRetVal srAPIExitLib(srAPIObj *pThis);
00121
00122
00123
00132 srRetVal srAPISendLogmsg(srAPIObj* pThis, char* szLogmsg);
00133
00148 srRetVal srAPISendSLMG(srAPIObj* pThis, struct srSLMGObject* pSLMG);
00149
00165 srRetVal srAPICloseLog(srAPIObj *pThis);
00166
00167
00192 srRetVal srAPISetOption(srAPIObj* pThis, SRoption iOpt, int iOptVal);
00193
00202 srRetVal srAPIRunListener(srAPIObj *pThis);
00203
00210 srRetVal srAPIShutdownListener(srAPIObj *pThis);
00211
00218 srRetVal srAPISetUsrPointer(srAPIObj *pAPI, void* pUsr);
00219
00227 srRetVal srAPIGetUsrPointer(srAPIObj *pAPI, void **ppToStore);
00228
00240 srRetVal srAPISetupListener(srAPIObj* pThis, void(*NewHandler)(srAPIObj*, struct srSLMGObject*));
00241
00254 srRetVal srAPISetMsgRcvCallback(srAPIObj* pThis, void(*NewHandler)(srAPIObj*, struct srSLMGObject*));
00255
00262 srRetVal srAPIShutdownListener(srAPIObj *pThis);
00263
00264
00265 #ifdef __cplusplus
00266 };
00267 #endif
00268
00269 #endif