00001 #ifdef CH_LANG_CC 00002 /* 00003 * _______ __ 00004 * / ___/ / ___ __ _ / / ___ 00005 * / /__/ _ \/ _ \/ V \/ _ \/ _ \ 00006 * \___/_//_/\___/_/_/_/_.__/\___/ 00007 * Please refer to Copyright.txt, in Chombo's root directory. 00008 */ 00009 #endif 00010 00011 #ifndef _FIXEDREFINEMENT_H_ 00012 #define _FIXEDREFINEMENT_H_ 00013 00014 #if defined(CH_Darwin) && defined(__GNUC__) && ( __GNUC__ == 3 ) 00015 // deal with the broken isnan()/isinf() in GCC on MacOS 00016 #include <unistd.h> 00017 #define _GLIBCPP_USE_C99 1 00018 #endif 00019 00020 #include "MayDay.H" 00021 #include "REAL.H" 00022 #include "Vector.H" 00023 00024 #include "Notation.H" 00025 #include "RefinementCriterion.H" 00026 00027 #include "NamespaceHeader.H" 00028 00030 00033 class FixedRefinement: public RefinementCriterion 00034 { 00035 public: 00037 FixedRefinement(); 00038 00040 FixedRefinement(const int & a_counter); 00041 00043 virtual ~FixedRefinement(); 00044 00046 00052 virtual bool doRefine(Vector<int> & a_refineInDir, 00053 const int & a_dim, 00054 const Vector<Real> & a_dxRatio, 00055 const Vector<Vector<Real> > & a_residual); 00056 00058 virtual void setCounter(const int & a_counter); 00059 00061 virtual int getCounter(); 00062 00063 protected: 00064 int m_counter; 00065 }; 00066 00067 #include "NamespaceFooter.H" 00068 00069 #endif