Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)

hp2D/buildH1TColumns.hh
Go to the documentation of this file.
00001 #ifndef buildH1TColumns2D_hh
00002 #define buildH1TColumns2D_hh
00003 
00004 #include "buildTColumnsBase.hh"
00005 
00006 namespace concepts {
00007 
00008   // forward declaration
00009   class EdgesOfVertices;
00010 }
00011 
00012 namespace hp2D {
00013   
00014   // **************************************************** BuildH1VtxTColumns **
00015 
00035   template<class F = concepts::Real>
00036   class BuildH1VtxTColumns : public BuildTColumnsBase<F> {
00037   public:
00038     typedef typename concepts::SpaceHelper<F, SpacePreBuilder> SpaceHelper;
00040     BuildH1VtxTColumns() : BuildTColumnsBase<F>() {}
00047     BuildH1VtxTColumns(SpaceHelper& spc) : BuildTColumnsBase<F>(spc) {}
00048 
00049     virtual ~BuildH1VtxTColumns() {}
00050 
00051     virtual void operator()(const concepts::Connector2& cntr,
00052                             concepts::TColumn<F>*& T1) const;
00053     virtual BuildH1VtxTColumns<F>* clone(SpaceHelper* spc = 0) const;
00054   protected:
00055     virtual std::ostream& info(std::ostream& os) const;
00056   };
00057 
00058   // *************************************************** BuildH1EdgeTColumns **
00059 
00080   template<class F = concepts::Real>
00081   class BuildH1EdgeTColumns : public BuildTColumnsBase<F> {
00082   public:
00083     typedef typename concepts::SpaceHelper<F, SpacePreBuilder> SpaceHelper;
00085     BuildH1EdgeTColumns() : BuildTColumnsBase<F>() {}
00092     BuildH1EdgeTColumns(SpaceHelper& spc) : BuildTColumnsBase<F>(spc) {}
00093 
00094     virtual ~BuildH1EdgeTColumns() {}
00095 
00100     virtual void operator()(const concepts::Connector2& cntr,
00101                             concepts::TColumn<F>*& T1) const;
00102     virtual BuildH1EdgeTColumns<F>* clone(SpaceHelper* spc = 0) const;
00103   protected:
00104     virtual std::ostream& info(std::ostream& os) const;
00105   };
00106 
00107   // ************************************************** BuildH1InnerTColumns **
00108 
00149   template<class F = concepts::Real>
00150   class BuildH1InnerTColumns : public BuildTColumnsBase<F> {
00151   public:
00152     typedef typename concepts::SpaceHelper<F, SpacePreBuilder> SpaceHelper;
00154     BuildH1InnerTColumns() : BuildTColumnsBase<F>() {}
00161     BuildH1InnerTColumns(SpaceHelper& spc) : BuildTColumnsBase<F>(spc) {}
00162 
00163     virtual ~BuildH1InnerTColumns() {}
00164 
00169     virtual void operator()(const concepts::Connector2& cntr,
00170                             concepts::TColumn<F>*& T1) const;
00171     virtual BuildH1InnerTColumns<F>* clone(SpaceHelper* spc = 0) const;
00186     virtual bool trunk(uint p, uint q, const ushort P[2]) const;
00187   protected:
00188     virtual std::ostream& info(std::ostream& os) const;
00189   };
00190 
00191   // ****************************************** BuildH1InnerTColumnsLinTrunk **
00192 
00212  template<class F = concepts::Real>
00213   class BuildH1InnerTColumnsLinTrunk : public BuildH1InnerTColumns<F> {
00214   public:
00215     typedef typename concepts::SpaceHelper<F, SpacePreBuilder> SpaceHelper;
00217     BuildH1InnerTColumnsLinTrunk() : BuildH1InnerTColumns<F>() {}
00224     BuildH1InnerTColumnsLinTrunk(SpaceHelper& spc)
00225       : BuildH1InnerTColumns<F>(spc) {}
00226     virtual ~BuildH1InnerTColumnsLinTrunk() {}
00227     virtual BuildH1InnerTColumnsLinTrunk<F>* clone(SpaceHelper* spc = 0) const;
00228 
00229     virtual bool trunk(uint p, uint q, const ushort P[2]) const;
00230   protected:
00231     virtual std::ostream& info(std::ostream& os) const;
00232   };
00233 
00234   // ****************************************** BuildH1InnerTColumnsHypTrunk **
00235 
00252  template<class F = concepts::Real>
00253   class BuildH1InnerTColumnsHypTrunk : public BuildH1InnerTColumns<F> {
00254   public:
00255     typedef typename concepts::SpaceHelper<F, SpacePreBuilder> SpaceHelper;
00257     BuildH1InnerTColumnsHypTrunk() : BuildH1InnerTColumns<F>() {}
00264     BuildH1InnerTColumnsHypTrunk(SpaceHelper& spc)
00265       : BuildH1InnerTColumns<F>(spc) {}
00266     virtual ~BuildH1InnerTColumnsHypTrunk() {}
00267     virtual BuildH1InnerTColumnsHypTrunk<F>* clone(SpaceHelper* spc = 0) const;
00268 
00269     virtual bool trunk(uint p, uint q, const ushort P[2]) const;
00270   protected:
00271     virtual std::ostream& info(std::ostream& os) const;
00272   };
00273 
00274 } // namespace hp2D
00275 
00276 #endif // buildH1TColumns2D_hh

Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)