1 /* HEXTAPI.H    (c) Copyright Roger Bowler & Others, 2005-2009       */
2 /*              Definition of Hercules External (public) APIs        */
3 
4 /********************************************************/
5 /*  This file originally written by Ivan Warren         */
6 /*  THE STATE OF THIS API IS NOT YET FINALIZED          */
7 /*  AND THEREFORE, THE INTERFACE MAY CHANGE             */
8 /********************************************************/
9 
10 #ifndef _HEXTAPI_H_
11 #define _HEXTAPI_H_
12 
13 #if defined(_MSVC_) && defined(HERC_DLL_BUILD)
14 #define DLL_IMPORT __declspec(dllimport)
15 #else
16 #define DLL_IMPORT extern
17 #endif
18 
19 typedef void (*LOGCALLBACK)(const char *,size_t);
20 typedef void (*COMMANDHANDLER)(void *);
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
26     /* LOG Callback */
27     DLL_IMPORT void registerLogCallback(LOGCALLBACK);
28     /* Panel Commands */
29     DLL_IMPORT COMMANDHANDLER getCommandHandler(void);
30     /* IMPL */
31     DLL_IMPORT int impl(int ac,char **av);
32 #ifdef __cplusplus
33 }
34 #endif
35 
36 #endif
37