00001 00006 #ifndef buildTColumnsBase2D_hh 00007 #define buildTColumnsBase2D_hh 00008 00009 #include "hp2D/spacePreBuilder.hh" 00010 #include "space/tmatrix.hh" 00011 #include "space/spacePreBuilder.hh" 00012 00013 namespace hp2D { 00014 00015 // ***************************************************** BuildTColumnsBase ** 00016 00029 template<class F> 00030 class BuildTColumnsBase : 00031 public concepts::BuildTColumnsBase<F, SpacePreBuilder> { 00032 public: 00033 typedef typename concepts::SpaceHelper<F, SpacePreBuilder> SpaceHelper; 00035 BuildTColumnsBase() : concepts::BuildTColumnsBase<F, SpacePreBuilder>() {} 00040 BuildTColumnsBase(SpaceHelper& spc) 00041 : concepts::BuildTColumnsBase<F, SpacePreBuilder>(spc) {} 00042 00043 virtual ~BuildTColumnsBase() {} 00044 00049 virtual void operator()(const concepts::Connector2& cntr, 00050 concepts::TColumn<F>*& T1) const = 0; 00051 virtual BuildTColumnsBase<F>* clone(SpaceHelper* spc = 0) const = 0; 00052 }; 00053 00054 } // namespace hp2D 00055 00056 #endif // buildTColumnsBase2D_hh