00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 
00028 
00029 
00030 
00031 
00032 
00033 
00034 
00035 
00036 
00037 
00038 
00039 
00040 
00041 
00042 
00049 #ifndef PANTHEIOS_INCL_PANTHEIOS_UTIL_CORE_HPP_APIDEFS
00050 #define PANTHEIOS_INCL_PANTHEIOS_UTIL_CORE_HPP_APIDEFS
00051 
00052 
00053 
00054 
00055 
00056 #ifndef PANTHEIOS_DOCUMENTATION_SKIP_SECTION
00057 # define PANTHEIOS_VER_PANTHEIOS_UTIL_CORE_HPP_APIDEFS_MAJOR    2
00058 # define PANTHEIOS_VER_PANTHEIOS_UTIL_CORE_HPP_APIDEFS_MINOR    1
00059 # define PANTHEIOS_VER_PANTHEIOS_UTIL_CORE_HPP_APIDEFS_REVISION 1
00060 # define PANTHEIOS_VER_PANTHEIOS_UTIL_CORE_HPP_APIDEFS_EDIT     15
00061 #endif 
00062 
00063 
00064 
00065 
00066 
00067 #ifndef PANTHEIOS_INCL_PANTHEIOS_H_PANTHEIOS
00068 # include <pantheios/pantheios.h>
00069 #endif 
00070 #ifndef PANTHEIOS_INCL_PANTHEIOS_H_BACKEND
00071 # include <pantheios/backend.h>
00072 #endif 
00073 #ifndef PANTHEIOS_INCL_PANTHEIOS_H_FRONTEND
00074 # include <pantheios/frontend.h>
00075 #endif 
00076 #ifndef PANTHEIOS_INCL_PANTHEIOS_H_INIT_CODES
00077 # include <pantheios/init_codes.h>
00078 #endif 
00079 
00080 #ifndef STLSOFT_INCL_STLSOFT_H_STLSOFT
00081 # include <stlsoft/stlsoft.h>
00082 #endif 
00083 
00084 
00085 
00086 
00087 
00089 typedef int (PANTHEIOS_CALLCONV* pantheios_fe_X_init_pfn_t)(
00090     void*   reserved
00091 ,   void**  ptoken
00092 );
00093 
00095 typedef int (PANTHEIOS_CALLCONV* pantheios_fe_X_uninit_pfn_t)(
00096     void*   token
00097 );
00098 
00100 typedef PAN_CHAR_T const* (PANTHEIOS_CALLCONV* pantheios_fe_X_getProcessIdentity_pfn_t)(void* token);
00101 
00103 typedef int (PANTHEIOS_CALLCONV* pantheios_fe_X_isSeverityLogged_pfn_t)(
00104     void*   token
00105 ,   int     severity
00106 ,   int     backEndId
00107 );
00108 
00109 
00111 typedef int (PANTHEIOS_CALLCONV* pantheios_be_X_init_pfn_t)(
00112     PAN_CHAR_T const*   processIdentity
00113 ,   int                 backEndId
00114 ,   void const*         init
00115 ,   void*               reserved
00116 ,   void**              ptoken
00117 );
00118 
00120 typedef int (PANTHEIOS_CALLCONV* pantheios_be_X_uninit_pfn_t)(
00121     void*       token
00122 );
00123 
00125 typedef int (PANTHEIOS_CALLCONV* pantheios_be_X_logEntry_pfn_t)(
00126     void*               feToken
00127 ,   void*               beToken
00128 ,   int                 severity
00129 ,   PAN_CHAR_T const*   entry
00130 ,   size_t              cchEntry
00131 );
00132 
00133 
00134 
00135 
00136 
00137 #if defined(STLSOFT_CF_EXCEPTION_SUPPORT) || \
00138     defined(PANTHEIOS_DOCUMENTATION_SKIP_SECTION)
00139 
00146 PANTHEIOS_CALL(int) pantheios_call_fe_init(
00147     pantheios_fe_X_init_pfn_t   pfn
00148 ,   void*                       reserved
00149 ,   void**                      ptoken
00150 );
00151 #else 
00152 inline int pantheios_call_fe_uninit(pantheios_fe_X_init_pfn_t pfn, void* reserved, void** ptoken)
00153 {
00154     return pfn(reserved, ptoken);
00155 }
00156 #endif 
00157 
00158 
00159 #if defined(STLSOFT_CF_EXCEPTION_SUPPORT) || \
00160     defined(PANTHEIOS_DOCUMENTATION_SKIP_SECTION)
00161 
00167 PANTHEIOS_CALL(int) pantheios_call_fe_uninit(
00168     pantheios_fe_X_uninit_pfn_t pfn
00169 ,   void*                       token
00170 );
00171 #else 
00172 inline int pantheios_call_fe_uninit(pantheios_fe_X_uninit_pfn_t pfn, void* token)
00173 {
00174     return pfn(token);
00175 }
00176 #endif 
00177 
00178 
00179 #if defined(STLSOFT_CF_EXCEPTION_SUPPORT) || \
00180     defined(PANTHEIOS_DOCUMENTATION_SKIP_SECTION)
00181 
00187 PANTHEIOS_CALL(PAN_CHAR_T const*) pantheios_call_fe_getProcessIdentity(
00188     pantheios_fe_X_getProcessIdentity_pfn_t pfn
00189 ,   void*                                   token
00190 );
00191 #else 
00192 inline PAN_CHAR_T const* pantheios_call_fe_getProcessIdentity(pantheios_fe_X_getProcessIdentity_pfn_t pfn, void* token)
00193 {
00194     return pfn(token);
00195 }
00196 #endif 
00197 
00198 
00199 #if defined(STLSOFT_CF_EXCEPTION_SUPPORT) || \
00200     defined(PANTHEIOS_DOCUMENTATION_SKIP_SECTION)
00201 
00216 PANTHEIOS_CALL(int) pantheios_call_fe_isSeverityLogged(
00217     pantheios_fe_X_isSeverityLogged_pfn_t   pfn
00218 ,   void*                                   token
00219 ,   int                                     severity
00220 ,   int                                     backEndId
00221 );
00222 #else 
00223 inline int pantheios_call_fe_isSeverityLogged(pantheios_fe_X_isSeverityLogged_pfn_t pfn, void* token, int severity, int backEndId)
00224 {
00225     return pfn(token, severity, backEndId);
00226 }
00227 #endif 
00228 
00229 
00230 
00231 
00232 
00233 #if defined(STLSOFT_CF_EXCEPTION_SUPPORT) || \
00234     defined(PANTHEIOS_DOCUMENTATION_SKIP_SECTION)
00235 
00245 PANTHEIOS_CALL(int) pantheios_call_be_void_init(
00246     pantheios_be_X_init_pfn_t   pfn
00247 ,   PAN_CHAR_T const*           processIdentity
00248 ,   int                         backEndId
00249 ,   void const*                 init
00250 ,   void*                       reserved
00251 ,   void**                      ptoken
00252 );
00253 #else 
00254 inline int pantheios_call_be_void_init(
00255     pantheios_be_X_init_pfn_t   pfn
00256 ,   PAN_CHAR_T const*           processIdentity
00257 ,   int                         backEndId
00258 ,   void const*                 init
00259 ,   void*                       reserved
00260 ,   void**                      ptoken
00261 )
00262 {
00263     return pfn(processIdentity, backEndId, init, reserved, ptoken);
00264 }
00265 #endif 
00266 
00267 
00278 template <typename T>
00279 inline int pantheios_call_be_X_init(
00280 #ifdef PANTHEIOS_DOCUMENTATION_SKIP_SECTION
00281     int (*                      pfn)(PAN_CHAR_T const*, int, T const*, void*, void**)
00282 #else 
00283     int (PANTHEIOS_CALLCONV*    pfn)(PAN_CHAR_T const*, int, T const*, void*, void**)
00284 #endif 
00285 ,   PAN_CHAR_T const*           processIdentity
00286 ,   int                         backEndId
00287 ,   T const*                    init
00288 ,   void*                       reserved
00289 ,   void**                      ptoken
00290 )
00291 {
00292     return pantheios_call_be_void_init(reinterpret_cast<pantheios_be_X_init_pfn_t>(pfn), processIdentity, backEndId, init, reserved, ptoken);
00293 }
00294 
00295 
00296 #if defined(STLSOFT_CF_EXCEPTION_SUPPORT) || \
00297     defined(PANTHEIOS_DOCUMENTATION_SKIP_SECTION)
00298 
00304 PANTHEIOS_CALL(int) pantheios_call_be_uninit(
00305     pantheios_be_X_uninit_pfn_t pfn
00306 ,   void*                       token
00307 );
00308 #else 
00309 inline int pantheios_call_be_uninit(pantheios_be_X_uninit_pfn_t pfn, void* token)
00310 {
00311     return pfn(token);
00312 }
00313 #endif 
00314 
00315 
00316 #if defined(STLSOFT_CF_EXCEPTION_SUPPORT) || \
00317     defined(PANTHEIOS_DOCUMENTATION_SKIP_SECTION)
00318 
00328 PANTHEIOS_CALL(int) pantheios_call_be_logEntry(
00329     pantheios_be_X_logEntry_pfn_t   pfn
00330 ,   void*                           feToken
00331 ,   void*                           beToken
00332 ,   int                             severity
00333 ,   PAN_CHAR_T const*               entry
00334 ,   size_t                          cchEntry
00335 );
00336 #else 
00337 inline int pantheios_call_be_logEntry(
00338     pantheios_be_X_logEntry_pfn_t   pfn
00339 ,   void*                           feToken
00340 ,   void*                           beToken
00341 ,   int                             severity
00342 ,   PAN_CHAR_T const*               entry
00343 ,   size_t                          cchEntry
00344 )
00345 {
00346     return pfn(feToken, beToken, severity, entry, cchEntry);
00347 }
00348 #endif 
00349 
00350 
00351 
00352 #endif 
00353 
00354