1 /* mcpp_lib.h: declarations of libmcpp exported (visible) functions */
2 #ifndef _MCPP_LIB_H
3 #define _MCPP_LIB_H
4 
5 #ifndef _MCPP_OUT_H
6 #include    "mcpp_out.h"            /* declaration of OUTDEST   */
7 #endif
8 
9 #if _WIN32 || _WIN64 || __CYGWIN__ || __CYGWIN64__ || __MINGW32__   \
10             || __MINGW64__
11 #if     DLL_EXPORT || (__CYGWIN__ && PIC)
12 #define DLL_DECL    __declspec( dllexport)
13 #elif   DLL_IMPORT
14 #define DLL_DECL    __declspec( dllimport)
15 #else
16 #define DLL_DECL
17 #endif
18 #else
19 #define DLL_DECL
20 #endif
21 
22 extern DLL_DECL int     mcpp_lib_main( int argc, char ** argv);
23 extern DLL_DECL void    mcpp_reset_def_out_func( void);
24 extern DLL_DECL void    mcpp_set_out_func(
25                     int (* func_fputc)  ( int c, OUTDEST od),
26                     int (* func_fputs)  ( const char * s, OUTDEST od),
27                     int (* func_fprintf)( OUTDEST od, const char * format, ...)
28                     );
29 extern DLL_DECL void    mcpp_use_mem_buffers( int tf);
30 extern DLL_DECL char *  mcpp_get_mem_buffer( OUTDEST od);
31 #endif  /* _MCPP_LIB_H  */
32