00001 #ifdef CH_LANG_CC
00002
00003
00004
00005
00006
00007
00008
00009 #endif
00010
00011
00012
00013 #ifndef _EBFACEFAB_H_
00014 #define _EBFACEFAB_H_
00015
00016 #include <cmath>
00017 #include <cstdlib>
00018 #include "SPACE.H"
00019 #include "BaseEBFaceFAB.H"
00020 #include "FArrayBox.H"
00021 #include "NamespaceHeader.H"
00022
00024
00028 class EBFaceFAB: public BaseEBFaceFAB<Real>
00029 {
00030 public:
00032 EBFaceFAB();
00033
00035
00039 EBFaceFAB(const EBISBox& a_ebisBox,
00040 const Box& a_region,
00041 int a_iDir, int a_nVar);
00042
00044 virtual ~EBFaceFAB();
00045
00047 const FArrayBox& getFArrayBox() const;
00048
00050
00054 FArrayBox& getFArrayBox();
00055
00057
00060 EBFaceFAB& operator+=(const EBFaceFAB& a_ebfab);
00061
00062
00064
00067 EBFaceFAB& plus(const EBFaceFAB& a_ebfab,
00068 int a_srccomp,
00069 int a_destcomp,
00070 int a_numcomp);
00071
00072
00074
00077 EBFaceFAB& operator-=(const EBFaceFAB& a_ebfab);
00078
00080
00083 EBFaceFAB& minus(const EBFaceFAB& a_ebfab,
00084 int a_srccomp,
00085 int a_destcomp,
00086 int a_numcomp);
00087
00088
00090
00093 EBFaceFAB& operator*=(const EBFaceFAB& a_ebfab);
00094
00096
00099 EBFaceFAB& mult(const EBFaceFAB& a_ebfab,
00100 int a_srccomp,
00101 int a_destcomp,
00102 int a_numcomp);
00103
00104
00106
00109 EBFaceFAB& operator/=(const EBFaceFAB& a_ebfab);
00110
00111
00113
00116 EBFaceFAB& divide(const EBFaceFAB& a_ebfab,
00117 int a_srccomp,
00118 int a_destcomp,
00119 int a_numcomp);
00120
00121
00123
00125 EBFaceFAB& operator+=(const Real& a_scalar);
00126
00128
00130 EBFaceFAB& operator-=(const Real& a_scalar);
00131
00133
00135 EBFaceFAB& operator*=(const Real& a_scalar);
00136
00138
00140 EBFaceFAB& operator/=(const Real& a_scalar);
00141
00142
00143 EBFaceFAB(const Box& a_region, int a_nComp)
00144 {
00145 MayDay::Error("bogus constructor");
00146 }
00147 private:
00148
00149 EBFaceFAB(const EBFaceFAB& ebcin)
00150 {
00151 MayDay::Error("bogus constructor");
00152 }
00153 void operator=(const EBFaceFAB& ebcin)
00154 {
00155 MayDay::Error("bogus constructor");
00156 }
00157
00158 };
00159
00160 #include "NamespaceFooter.H"
00161 #endif