00001 #ifndef _INTERPFACE_F_H_
00002 #define _INTERPFACE_F_H_
00003
00004 #include "FORT_PROTO.H"
00005 #include "CH_Timer.H"
00006 #include "REAL.H"
00007
00008 extern "C"
00009 {
00010
00011 #ifndef GUARDINTERPFACECONSTANT
00012 #define GUARDINTERPFACECONSTANT
00013
00014
00015 void FORTRAN_NAME( INTERPFACECONSTANT ,interpfaceconstant )(
00016 CHFp_FRA(fine)
00017 ,CHFp_CONST_FRA(coarse)
00018 ,CHFp_BOX(b)
00019 ,CHFp_CONST_INT(ref_ratio)
00020 ,CHFp_BOX(bref)
00021 ,CHFp_CONST_INT(dir) );
00022
00023 #define FORT_INTERPFACECONSTANT FORTRAN_NAME( inlineINTERPFACECONSTANT, inlineINTERPFACECONSTANT)
00024 #define FORTNT_INTERPFACECONSTANT FORTRAN_NAME( INTERPFACECONSTANT, interpfaceconstant)
00025
00026 inline void FORTRAN_NAME(inlineINTERPFACECONSTANT, inlineINTERPFACECONSTANT)(
00027 CHFp_FRA(fine)
00028 ,CHFp_CONST_FRA(coarse)
00029 ,CHFp_BOX(b)
00030 ,CHFp_CONST_INT(ref_ratio)
00031 ,CHFp_BOX(bref)
00032 ,CHFp_CONST_INT(dir) )
00033 {
00034 CH_TIMELEAF("FORT_INTERPFACECONSTANT");
00035 FORTRAN_NAME( INTERPFACECONSTANT ,interpfaceconstant )(
00036 CHFt_FRA(fine)
00037 ,CHFt_CONST_FRA(coarse)
00038 ,CHFt_BOX(b)
00039 ,CHFt_CONST_INT(ref_ratio)
00040 ,CHFt_BOX(bref)
00041 ,CHFt_CONST_INT(dir) );
00042 }
00043 #endif // GUARDINTERPFACECONSTANT
00044
00045 #ifndef GUARDINTERPLINEARFACE
00046 #define GUARDINTERPLINEARFACE
00047
00048
00049 void FORTRAN_NAME( INTERPLINEARFACE ,interplinearface )(
00050 CHFp_FRA(fine)
00051 ,CHFp_CONST_FRA(slope)
00052 ,CHFp_BOX(b)
00053 ,CHFp_CONST_INT(dir)
00054 ,CHFp_CONST_INT(ref_ratio)
00055 ,CHFp_BOX(brefface) );
00056
00057 #define FORT_INTERPLINEARFACE FORTRAN_NAME( inlineINTERPLINEARFACE, inlineINTERPLINEARFACE)
00058 #define FORTNT_INTERPLINEARFACE FORTRAN_NAME( INTERPLINEARFACE, interplinearface)
00059
00060 inline void FORTRAN_NAME(inlineINTERPLINEARFACE, inlineINTERPLINEARFACE)(
00061 CHFp_FRA(fine)
00062 ,CHFp_CONST_FRA(slope)
00063 ,CHFp_BOX(b)
00064 ,CHFp_CONST_INT(dir)
00065 ,CHFp_CONST_INT(ref_ratio)
00066 ,CHFp_BOX(brefface) )
00067 {
00068 CH_TIMELEAF("FORT_INTERPLINEARFACE");
00069 FORTRAN_NAME( INTERPLINEARFACE ,interplinearface )(
00070 CHFt_FRA(fine)
00071 ,CHFt_CONST_FRA(slope)
00072 ,CHFt_BOX(b)
00073 ,CHFt_CONST_INT(dir)
00074 ,CHFt_CONST_INT(ref_ratio)
00075 ,CHFt_BOX(brefface) );
00076 }
00077 #endif // GUARDINTERPLINEARFACE
00078
00079 #ifndef GUARDINTERPLINEARINTERIORFACE
00080 #define GUARDINTERPLINEARINTERIORFACE
00081
00082
00083 void FORTRAN_NAME( INTERPLINEARINTERIORFACE ,interplinearinteriorface )(
00084 CHFp_FRA(fine)
00085 ,CHFp_BOX(bcoarse)
00086 ,CHFp_CONST_INT(ref_ratio)
00087 ,CHFp_CONST_INT(facedir)
00088 ,CHFp_BOX(interiorrefbox) );
00089
00090 #define FORT_INTERPLINEARINTERIORFACE FORTRAN_NAME( inlineINTERPLINEARINTERIORFACE, inlineINTERPLINEARINTERIORFACE)
00091 #define FORTNT_INTERPLINEARINTERIORFACE FORTRAN_NAME( INTERPLINEARINTERIORFACE, interplinearinteriorface)
00092
00093 inline void FORTRAN_NAME(inlineINTERPLINEARINTERIORFACE, inlineINTERPLINEARINTERIORFACE)(
00094 CHFp_FRA(fine)
00095 ,CHFp_BOX(bcoarse)
00096 ,CHFp_CONST_INT(ref_ratio)
00097 ,CHFp_CONST_INT(facedir)
00098 ,CHFp_BOX(interiorrefbox) )
00099 {
00100 CH_TIMELEAF("FORT_INTERPLINEARINTERIORFACE");
00101 FORTRAN_NAME( INTERPLINEARINTERIORFACE ,interplinearinteriorface )(
00102 CHFt_FRA(fine)
00103 ,CHFt_BOX(bcoarse)
00104 ,CHFt_CONST_INT(ref_ratio)
00105 ,CHFt_CONST_INT(facedir)
00106 ,CHFt_BOX(interiorrefbox) );
00107 }
00108 #endif // GUARDINTERPLINEARINTERIORFACE
00109
00110 #ifndef GUARDINTERPLIMITFACE
00111 #define GUARDINTERPLIMITFACE
00112
00113
00114 void FORTRAN_NAME( INTERPLIMITFACE ,interplimitface )(
00115 CHFp_FRA(islope)
00116 ,CHFp_FRA(jslope)
00117 ,CHFp_FRA(kslope)
00118 ,CHFp_FRA(lslope)
00119 ,CHFp_FRA(mslope)
00120 ,CHFp_FRA(nslope)
00121 ,CHFp_CONST_FRA(state)
00122 ,CHFp_BOX(b)
00123 ,CHFp_BOX(bn)
00124 ,CHFp_BOX(validBox)
00125 ,CHFp_CONST_INT(normaldir) );
00126
00127 #define FORT_INTERPLIMITFACE FORTRAN_NAME( inlineINTERPLIMITFACE, inlineINTERPLIMITFACE)
00128 #define FORTNT_INTERPLIMITFACE FORTRAN_NAME( INTERPLIMITFACE, interplimitface)
00129
00130 inline void FORTRAN_NAME(inlineINTERPLIMITFACE, inlineINTERPLIMITFACE)(
00131 CHFp_FRA(islope)
00132 ,CHFp_FRA(jslope)
00133 ,CHFp_FRA(kslope)
00134 ,CHFp_FRA(lslope)
00135 ,CHFp_FRA(mslope)
00136 ,CHFp_FRA(nslope)
00137 ,CHFp_CONST_FRA(state)
00138 ,CHFp_BOX(b)
00139 ,CHFp_BOX(bn)
00140 ,CHFp_BOX(validBox)
00141 ,CHFp_CONST_INT(normaldir) )
00142 {
00143 CH_TIMELEAF("FORT_INTERPLIMITFACE");
00144 FORTRAN_NAME( INTERPLIMITFACE ,interplimitface )(
00145 CHFt_FRA(islope)
00146 ,CHFt_FRA(jslope)
00147 ,CHFt_FRA(kslope)
00148 ,CHFt_FRA(lslope)
00149 ,CHFt_FRA(mslope)
00150 ,CHFt_FRA(nslope)
00151 ,CHFt_CONST_FRA(state)
00152 ,CHFt_BOX(b)
00153 ,CHFt_BOX(bn)
00154 ,CHFt_BOX(validBox)
00155 ,CHFt_CONST_INT(normaldir) );
00156 }
00157 #endif // GUARDINTERPLIMITFACE
00158
00159 }
00160
00161 #endif