FortranAdaptorAPIMangling.h
Go to the documentation of this file.
1 #ifndef FortranCInterface_HEADER_INCLUDED
2 #define FortranCInterface_HEADER_INCLUDED
3 
4 /* Mangling for Fortran global symbols without underscores. */
5 #define FortranCInterface_GLOBAL(name,NAME) name##_
6 
7 /* Mangling for Fortran global symbols with underscores. */
8 #define FortranCInterface_GLOBAL_(name,NAME) name##_
9 
10 /* Mangling for Fortran module symbols without underscores. */
11 #define FortranCInterface_MODULE(mod_name,name, mod_NAME,NAME) __##mod_name##_MOD_##name
12 
13 /* Mangling for Fortran module symbols with underscores. */
14 #define FortranCInterface_MODULE_(mod_name,name, mod_NAME,NAME) __##mod_name##_MOD_##name
15 
16 /*--------------------------------------------------------------------------*/
17 /* Mangle some symbols automatically. */
18 #define coprocessorinitialize FortranCInterface_GLOBAL(coprocessorinitialize, COPROCESSORINITIALIZE)
19 #define coprocessorfinalize FortranCInterface_GLOBAL(coprocessorfinalize, COPROCESSORFINALIZE)
20 #define requestdatadescription FortranCInterface_GLOBAL(requestdatadescription, REQUESTDATADESCRIPTION)
21 #define needtocreategrid FortranCInterface_GLOBAL(needtocreategrid, NEEDTOCREATEGRID)
22 #define coprocess FortranCInterface_GLOBAL(coprocess, COPROCESS)
23 
24 #endif