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 #ifndef _FORT_PROTO_H_
00029 #define _FORT_PROTO_H_
00030
00031 #include "REAL.H"
00032 #include "SPACE.H"
00033
00034 #ifdef CH_FORT_UPPERCASE
00035 #ifdef CH_FORT_UNDERSCORE
00036 #define FORTRAN_NAME( NAME ,name ) NAME ## _
00037 #else
00038 #define FORTRAN_NAME( NAME ,name ) NAME
00039 #endif
00040 #else
00041 #ifdef CH_FORT_UNDERSCORE
00042 #define FORTRAN_NAME( NAME ,name ) name ## _
00043 #else
00044 #define FORTRAN_NAME( NAME ,name ) name
00045 #endif
00046 #endif
00047
00048
00049
00050
00051
00052
00053 #define CHF_INT( i ) &i
00054 #define CHF_REAL( r ) &r
00055 #define CHF_CONST_INT( i ) &i
00056 #define CHF_CONST_REAL( r ) &r
00057
00058
00059
00060 #define CHF_BOX( b ) D_DECL( &b.loVect()[0] \
00061 ,&b.loVect()[1] \
00062 ,&b.loVect()[2] ) \
00063 ,D_DECL( &b.hiVect()[0] \
00064 ,&b.hiVect()[1] \
00065 ,&b.hiVect()[2] )
00066
00067 #define CHF_FIA( a ) a.dataPtr( 0 ) \
00068 ,D_DECL( &a.loVect()[0] \
00069 ,&a.loVect()[1] \
00070 ,&a.loVect()[2] ) \
00071 ,D_DECL( &a.hiVect()[0] \
00072 ,&a.hiVect()[1] \
00073 ,&a.hiVect()[2] ) \
00074 ,a.nCompPtr()
00075
00076 #define CHF_FRA( a ) a.dataPtr( 0 ) \
00077 ,D_DECL( &a.loVect()[0] \
00078 ,&a.loVect()[1] \
00079 ,&a.loVect()[2] ) \
00080 ,D_DECL( &a.hiVect()[0] \
00081 ,&a.hiVect()[1] \
00082 ,&a.hiVect()[2] ) \
00083 ,a.nCompPtr()
00084
00085 #define CHF_CONST_FIA( a ) a.dataPtr( 0 ) \
00086 ,D_DECL( &a.loVect()[0] \
00087 ,&a.loVect()[1] \
00088 ,&a.loVect()[2] ) \
00089 ,D_DECL( &a.hiVect()[0] \
00090 ,&a.hiVect()[1] \
00091 ,&a.hiVect()[2] ) \
00092 ,a.nCompPtr()
00093
00094 #define CHF_CONST_FRA( a ) a.dataPtr( 0 ) \
00095 ,D_DECL( &a.loVect()[0] \
00096 ,&a.loVect()[1] \
00097 ,&a.loVect()[2] ) \
00098 ,D_DECL( &a.hiVect()[0] \
00099 ,&a.hiVect()[1] \
00100 ,&a.hiVect()[2] ) \
00101 ,a.nCompPtr()
00102
00103 #define CHF_FIA1( a,n ) a.dataPtr( n ) \
00104 ,D_DECL( &a.loVect()[0] \
00105 ,&a.loVect()[1] \
00106 ,&a.loVect()[2] ) \
00107 ,D_DECL( &a.hiVect()[0] \
00108 ,&a.hiVect()[1] \
00109 ,&a.hiVect()[2] )
00110
00111 #define CHF_INTVECT( a ) a.dataPtr( )
00112 #define CHF_REALVECT( a ) a.dataPtr( )
00113
00114 #define CHF_FRA1( a,n ) a.dataPtr( n ) \
00115 ,D_DECL( &a.loVect()[0] \
00116 ,&a.loVect()[1] \
00117 ,&a.loVect()[2] ) \
00118 ,D_DECL( &a.hiVect()[0] \
00119 ,&a.hiVect()[1] \
00120 ,&a.hiVect()[2] )
00121
00122 #define CHF_CONST_FIA1( a,n ) a.dataPtr( n ) \
00123 ,D_DECL( &a.loVect()[0] \
00124 ,&a.loVect()[1] \
00125 ,&a.loVect()[2] ) \
00126 ,D_DECL( &a.hiVect()[0] \
00127 ,&a.hiVect()[1] \
00128 ,&a.hiVect()[2] )
00129
00130 #define CHF_CONST_FRA1( a,n ) a.dataPtr( n ) \
00131 ,D_DECL( &a.loVect()[0] \
00132 ,&a.loVect()[1] \
00133 ,&a.loVect()[2] ) \
00134 ,D_DECL( &a.hiVect()[0] \
00135 ,&a.hiVect()[1] \
00136 ,&a.hiVect()[2] )
00137
00138
00139
00140
00141 #define CHFp_INT( i ) int* const i
00142 #define CHFp_CONST_INT( i ) const int* const i
00143 #define CHFp_REAL( r ) Real* const r
00144 #define CHFp_CONST_REAL( r ) const Real* const r
00145 #define CHFp_REALVECT( r ) const Real* const r
00146 #define CHFp_INTVECT( r ) const int* const r
00147
00148 #define CHFp_BOX( b ) D_DECL( const int* const i ## b ## lo0 \
00149 ,const int* const i ## b ## lo1 \
00150 ,const int* const i ## b ## lo2 ) \
00151 ,D_DECL( const int* const i ## b ## hi0 \
00152 ,const int* const i ## b ## hi1 \
00153 ,const int* const i ## b ## hi2 )
00154
00155 #define CHFp_FIA( a ) int *const a \
00156 ,D_DECL( const int* const i ## a ## lo0 \
00157 ,const int* const i ## a ## lo1 \
00158 ,const int* const i ## a ## lo2 ) \
00159 ,D_DECL( const int* const i ## a ## hi0 \
00160 ,const int* const i ## a ## hi1 \
00161 ,const int* const i ## a ## hi2 ) \
00162 ,const int* const n ## a ## comp
00163 #define CHFp_FRA( a ) Real *const a \
00164 ,D_DECL( const int* const i ## a ## lo0 \
00165 ,const int* const i ## a ## lo1 \
00166 ,const int* const i ## a ## lo2 ) \
00167 ,D_DECL( const int* const i ## a ## hi0 \
00168 ,const int* const i ## a ## hi1 \
00169 ,const int* const i ## a ## hi2 ) \
00170 ,const int* const n ## a ## comp
00171 #define CHFp_CONST_FIA( a ) const int *const a \
00172 ,D_DECL( const int* const i ## a ## lo0 \
00173 ,const int* const i ## a ## lo1 \
00174 ,const int* const i ## a ## lo2 ) \
00175 ,D_DECL( const int* const i ## a ## hi0 \
00176 ,const int* const i ## a ## hi1 \
00177 ,const int* const i ## a ## hi2 ) \
00178 ,const int* const n ## a ## comp
00179 #define CHFp_CONST_FRA( a ) const Real *const a \
00180 ,D_DECL( const int* const i ## a ## lo0 \
00181 ,const int* const i ## a ## lo1 \
00182 ,const int* const i ## a ## lo2 ) \
00183 ,D_DECL( const int* const i ## a ## hi0 \
00184 ,const int* const i ## a ## hi1 \
00185 ,const int* const i ## a ## hi2 ) \
00186 ,const int* const n ## a ## comp
00187 #define CHFp_FIA1( a ) int *const a \
00188 ,D_DECL( const int* const i ## a ## lo0 \
00189 ,const int* const i ## a ## lo1 \
00190 ,const int* const i ## a ## lo2 ) \
00191 ,D_DECL( const int* const i ## a ## hi0 \
00192 ,const int* const i ## a ## hi1 \
00193 ,const int* const i ## a ## hi2 )
00194 #define CHFp_FRA1( a ) Real *const a \
00195 ,D_DECL( const int* const i ## a ## lo0 \
00196 ,const int* const i ## a ## lo1 \
00197 ,const int* const i ## a ## lo2 ) \
00198 ,D_DECL( const int* const i ## a ## hi0 \
00199 ,const int* const i ## a ## hi1 \
00200 ,const int* const i ## a ## hi2 )
00201 #define CHFp_CONST_FIA1( a ) const int *const a \
00202 ,D_DECL( const int* const i ## a ## lo0 \
00203 ,const int* const i ## a ## lo1 \
00204 ,const int* const i ## a ## lo2 ) \
00205 ,D_DECL( const int* const i ## a ## hi0 \
00206 ,const int* const i ## a ## hi1 \
00207 ,const int* const i ## a ## hi2 )
00208 #define CHFp_CONST_FRA1( a ) const Real *const a \
00209 ,D_DECL( const int* const i ## a ## lo0 \
00210 ,const int* const i ## a ## lo1 \
00211 ,const int* const i ## a ## lo2 ) \
00212 ,D_DECL( const int* const i ## a ## hi0 \
00213 ,const int* const i ## a ## hi1 \
00214 ,const int* const i ## a ## hi2 )
00215
00216 #endif