Chombo + EB + MF  3.2
FortranNameMacro.H
Go to the documentation of this file.
1 #ifdef CH_LANG_CC
2 /*
3  * _______ __
4  * / ___/ / ___ __ _ / / ___
5  * / /__/ _ \/ _ \/ V \/ _ \/ _ \
6  * \___/_//_/\___/_/_/_/_.__/\___/
7  * Please refer to Copyright.txt, in Chombo's root directory.
8  */
9 #endif
10 
11 #ifndef _FORTRANNAMEMACRO_H_
12 #define _FORTRANNAMEMACRO_H_
13 
14 #ifdef CH_FORT_UPPERCASE
15  #ifdef CH_FORT_UNDERSCORE
16  #define FORTRAN_BASENAME( NAME ,name ) NAME ## _
17  #ifdef CH_USE_DOUBLE
18  #define LAPACK(NAME, name) d ## NAME ## _
19  #else
20  #define LAPACK(NAME, name) s ## NAME ## _
21  #endif
22  #else
23  #define FORTRAN_BASENAME( NAME ,name ) NAME
24  #ifdef CH_USE_DOUBLE
25  #define LAPACK(NAME, name) d ## NAME
26  #else
27  #define LAPACK(NAME, name) s ## NAME
28  #endif
29  #endif
30 #else
31  #ifdef CH_FORT_UNDERSCORE
32  #define FORTRAN_BASENAME( NAME ,name ) name ## _
33  #ifdef CH_USE_DOUBLE
34  #define LAPACK(NAME, name) d ## name ## _
35  #else
36  #define LAPACK(NAME, name) s ## name ## _
37  #endif
38  #else
39  #define FORTRAN_BASENAME( NAME ,name ) name
40  #ifdef CH_USE_DOUBLE
41  #define LAPACK(NAME, name) d ## name
42  #else
43  #define LAPACK(NAME, name) s ## name
44  #endif
45  #endif
46 #endif
47 
48 
49 
50 #ifndef CH_MULTIDIM
51  #ifdef CH_FORT_UPPERCASE
52  #ifdef CH_FORT_UNDERSCORE
53  #define FORTRAN_NAME( NAME ,name ) NAME ## _
54  #else
55  #define FORTRAN_NAME( NAME ,name ) NAME
56  #endif
57  #else
58  #ifdef CH_FORT_UNDERSCORE
59  #define FORTRAN_NAME( NAME ,name ) name ## _
60  #else
61  #define FORTRAN_NAME( NAME ,name ) name
62  #endif
63  #endif
64 #else
65  #ifndef LAST_MULTIDIM_FortranNameMacro_SPACEDIM
66  #define LAST_MULTIDIM_FortranNameMacro_SPACEDIM 0
67  #endif
68  #if CH_SPACEDIM != LAST_MULTIDIM_FortranNameMacro_SPACEDIM
69  #undef LAST_MULTIDIM_FortranNameMacro_SPACEDIM
70  #ifdef FORTRAN_NAME
71  #undef FORTRAN_NAME
72  #endif
73  #if CH_SPACEDIM == 0
74  #elif CH_SPACEDIM == 1
75  #ifdef CH_FORT_UPPERCASE
76  #ifdef CH_FORT_UNDERSCORE
77  #define FORTRAN_NAME( NAME ,name ) NAME ## _ ## 1d_
78  #else
79  #define FORTRAN_NAME( NAME ,name ) NAME ## 1d
80  #endif
81  #else
82  #ifdef CH_FORT_UNDERSCORE
83  #define FORTRAN_NAME( NAME ,name ) name ## _ ## 1d_
84  #else
85  #define FORTRAN_NAME( NAME ,name ) name ## 1d
86  #endif
87  #endif
88  #define LAST_MULTIDIM_FortranNameMacro_SPACEDIM 1
89  #elif CH_SPACEDIM == 2
90  #ifdef CH_FORT_UPPERCASE
91  #ifdef CH_FORT_UNDERSCORE
92  #define FORTRAN_NAME( NAME ,name ) NAME ## _ ## 2d_
93  #else
94  #define FORTRAN_NAME( NAME ,name ) NAME ## 2d
95  #endif
96  #else
97  #ifdef CH_FORT_UNDERSCORE
98  #define FORTRAN_NAME( NAME ,name ) name ## _ ## 2d_
99  #else
100  #define FORTRAN_NAME( NAME ,name ) name ## 2d
101  #endif
102  #endif
103  #define LAST_MULTIDIM_FortranNameMacro_SPACEDIM 2
104  #elif CH_SPACEDIM == 3
105  #ifdef CH_FORT_UPPERCASE
106  #ifdef CH_FORT_UNDERSCORE
107  #define FORTRAN_NAME( NAME ,name ) NAME ## _ ## 3d_
108  #else
109  #define FORTRAN_NAME( NAME ,name ) NAME ## 3d
110  #endif
111  #else
112  #ifdef CH_FORT_UNDERSCORE
113  #define FORTRAN_NAME( NAME ,name ) name ## _ ## 3d_
114  #else
115  #define FORTRAN_NAME( NAME ,name ) name ## 3d
116  #endif
117  #endif
118  #define LAST_MULTIDIM_FortranNameMacro_SPACEDIM 3
119  #elif CH_SPACEDIM == 4
120  #ifdef CH_FORT_UPPERCASE
121  #ifdef CH_FORT_UNDERSCORE
122  #define FORTRAN_NAME( NAME ,name ) NAME ## _ ## 4d_
123  #else
124  #define FORTRAN_NAME( NAME ,name ) NAME ## 4d
125  #endif
126  #else
127  #ifdef CH_FORT_UNDERSCORE
128  #define FORTRAN_NAME( NAME ,name ) name ## _ ## 4d_
129  #else
130  #define FORTRAN_NAME( NAME ,name ) name ## 4d
131  #endif
132  #endif
133  #define LAST_MULTIDIM_FortranNameMacro_SPACEDIM 4
134  #elif CH_SPACEDIM == 5
135  #ifdef CH_FORT_UPPERCASE
136  #ifdef CH_FORT_UNDERSCORE
137  #define FORTRAN_NAME( NAME ,name ) NAME ## _ ## 5d_
138  #else
139  #define FORTRAN_NAME( NAME ,name ) NAME ## 5d
140  #endif
141  #else
142  #ifdef CH_FORT_UNDERSCORE
143  #define FORTRAN_NAME( NAME ,name ) name ## _ ## 5d_
144  #else
145  #define FORTRAN_NAME( NAME ,name ) name ## 5d
146  #endif
147  #endif
148  #define LAST_MULTIDIM_FortranNameMacro_SPACEDIM 5
149  #elif CH_SPACEDIM == 6
150  #ifdef CH_FORT_UPPERCASE
151  #ifdef CH_FORT_UNDERSCORE
152  #define FORTRAN_NAME( NAME ,name ) NAME ## _ ## 6d_
153  #else
154  #define FORTRAN_NAME( NAME ,name ) NAME ## 6d
155  #endif
156  #else
157  #ifdef CH_FORT_UNDERSCORE
158  #define FORTRAN_NAME( NAME ,name ) name ## _ ## 6d_
159  #else
160  #define FORTRAN_NAME( NAME ,name ) name ## 6d
161  #endif
162  #endif
163  #define LAST_MULTIDIM_FortranNameMacro_SPACEDIM 6
164  #else
165  Fail now: CH_SPACEDIM must be 1, 2, 3, 4, 5 or 6.
166  #endif
167  #endif
168 #endif
169 
170 #endif
#define CH_SPACEDIM
Definition: SPACE.H:51
Fail now
Definition: BaseNamespaceFooter.H:15