00001 #ifndef __CHM_LISTENER_DLL_H__
00002 #define __CHM_LISTENER_DLL_H__
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #include <CHM/CHMminimumInclude.h>
00024
00025 #ifndef __CHM_LISTENER_HANDLE_H__
00026 #define __CHM_LISTENER_HANDLE_H__
00027 typedef void* CHMlistenerHandle;
00028 #endif
00029
00030
00031 CHM_DLL_FUNC(CHMlistenerCreate)
00032 (
00033 CHMlistenerHandle* pResult
00034 );
00035
00036 CHM_DLL_FUNC(CHMlistenerAddRef)
00037 (
00038 CHMlistenerHandle Handle
00039 );
00040
00041 CHM_DLL_FUNC(CHMlistenerRelease)
00042 (
00043 CHMlistenerHandle Handle
00044 );
00045
00046 CHM_DLL_FUNC(CHMlistenerAddListener)
00047 (
00048 CHMlistenerHandle Handle,
00049 void* pListener
00050 );
00051
00052 CHM_DLL_FUNC(CHMlistenerRemoveListener)
00053 (
00054 CHMlistenerHandle Handle,
00055 void* pListener
00056 );
00057
00058 CHM_DLL_FUNC(CHMlistenerGetPort)
00059 (
00060 CHMlistenerHandle Handle,
00061 CHMint32* pResult
00062 );
00063
00064 CHM_DLL_FUNC(CHMlistenerGetHost)
00065 (
00066 CHMlistenerHandle Handle,
00067 const char** pResult
00068 );
00069
00070 CHM_DLL_FUNC(CHMlistenerSetHost)
00071 (
00072 CHMlistenerHandle Handle,
00073 const char* Value
00074 );
00075
00076 CHM_DLL_FUNC(CHMlistenerGetHeaderBlock)
00077 (
00078 CHMlistenerHandle Handle,
00079 const char** pResult
00080 );
00081
00082 CHM_DLL_FUNC(CHMlistenerSetHeaderBlock)
00083 (
00084 CHMlistenerHandle Handle,
00085 const char* Value
00086 );
00087
00088 CHM_DLL_FUNC(CHMlistenerGetTrailerBlock)
00089 (
00090 CHMlistenerHandle Handle,
00091 const char** pResult
00092 );
00093
00094 CHM_DLL_FUNC(CHMlistenerSetTrailerBlock)
00095 (
00096 CHMlistenerHandle Handle,
00097 const char* Value
00098 );
00099
00100 CHM_DLL_FUNC(CHMlistenerGetIsListening)
00101 (
00102 CHMlistenerHandle Handle,
00103 CHMboolean* pResult
00104 );
00105
00106 CHM_DLL_FUNC(CHMlistenerGetConnection)
00107 (
00108 CHMlistenerHandle Handle,
00109 CHMint32 ClientIndex,
00110 CHMconnectionHandle* pResult
00111 );
00112
00113 CHM_DLL_FUNC(CHMlistenerCountOfConnection)
00114 (
00115 CHMlistenerHandle Handle,
00116 CHMint32* pResult
00117 );
00118
00119 CHM_DLL_FUNC(CHMlistenerStopMessageLoop)
00120 (
00121 CHMlistenerHandle Handle
00122 );
00123
00124 CHM_DLL_FUNC(CHMlistenerRunMessageLoop)
00125 (
00126 );
00127
00128 CHM_DLL_FUNC(CHMlistenerStartListen)
00129 (
00130 CHMlistenerHandle Handle,
00131 CHMint32 Port
00132 );
00133
00134 CHM_DLL_FUNC(CHMlistenerMakePrintable)
00135 (
00136 CHMlistenerHandle Handle,
00137 const char* InputString,
00138 const char* NewLine,
00139 CHMint32 MaximumLength,
00140 const char** pResult
00141 );
00142
00143 CHM_DLL_FUNC(CHMlistenerStopListen)
00144 (
00145 CHMlistenerHandle Handle
00146 );
00147
00148 CHM_DLL_FUNC(CHMlistenerCloseAll)
00149 (
00150 CHMlistenerHandle Handle
00151 );
00152
00153 typedef CHMresult (CHM_STD_CALL* CHMlistenerListenerErrorCallback)
00154 (
00155 void* pListenerInstance,
00156 const char* ErrorMessage,
00157 CHMint32 Code
00158 );
00159
00160 CHM_DLL_FUNC(CHMlistenerSetListenerErrorCallback)
00161 (
00162 CHMlistenerListenerErrorCallback Callback
00163 );
00164
00165 typedef CHMresult (CHM_STD_CALL* CHMlistenerConnectCallback)
00166 (
00167 void* pListenerInstance,
00168 CHMconnectionHandle Client
00169 );
00170
00171 CHM_DLL_FUNC(CHMlistenerSetConnectCallback)
00172 (
00173 CHMlistenerConnectCallback Callback
00174 );
00175
00176 typedef CHMresult (CHM_STD_CALL* CHMlistenerDisconnectCallback)
00177 (
00178 void* pListenerInstance,
00179 CHMconnectionHandle Client
00180 );
00181
00182 CHM_DLL_FUNC(CHMlistenerSetDisconnectCallback)
00183 (
00184 CHMlistenerDisconnectCallback Callback
00185 );
00186
00187 typedef CHMresult (CHM_STD_CALL* CHMlistenerConnectionErrorCallback)
00188 (
00189 void* pListenerInstance,
00190 CHMconnectionHandle Client,
00191 const char* ErrorMessage,
00192 CHMint32 ErrorCode
00193 );
00194
00195 CHM_DLL_FUNC(CHMlistenerSetConnectionErrorCallback)
00196 (
00197 CHMlistenerConnectionErrorCallback Callback
00198 );
00199
00200 typedef CHMresult (CHM_STD_CALL* CHMlistenerMessageCallback)
00201 (
00202 void* pListenerInstance,
00203 CHMconnectionHandle Client,
00204 const char* Message
00205 );
00206
00207 CHM_DLL_FUNC(CHMlistenerSetMessageCallback)
00208 (
00209 CHMlistenerMessageCallback Callback
00210 );
00211
00212 typedef CHMresult (CHM_STD_CALL* CHMlistenerIgnoredDataCallback)
00213 (
00214 void* pListenerInstance,
00215 CHMconnectionHandle Client,
00216 const char* Data
00217 );
00218
00219 CHM_DLL_FUNC(CHMlistenerSetIgnoredDataCallback)
00220 (
00221 CHMlistenerIgnoredDataCallback Callback
00222 );
00223 #endif // end of defensive include