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

constraints/element.hh
Go to the documentation of this file.
00001 // element for constraints
00002 
00003 #ifndef constrElement_hh
00004 #define constrElement_hh
00005 
00006 #include "space/element.hh"
00007 #include "space/elementPairs.hh"
00008 #include "space/tmatrix.hh"
00009 
00010 namespace constraints {
00011 
00012   // *************************************************************** Element **
00013 
00017   template<typename F>
00018   class Element : public concepts::Element<F>,
00019       public concepts::ElementPair<F> {
00020   public:
00025     Element(concepts::Element<F>& elm, concepts::TColumn<F>* T);
00026     virtual ~Element();
00027     virtual const concepts::TMatrix<F>& T() const { return T_; }
00028 
00030     const concepts::Element<F>& compElement() const { return elm_; }
00031 
00032     virtual const concepts::Element<F>& elm1() const { return *this; }
00033     virtual const concepts::Element<F>& elm2() const { return elm_; }
00034   protected:
00035     virtual std::ostream& info(std::ostream& os) const;
00036   private:
00038     concepts::Element<F>& elm_;
00039 
00041     concepts::TMatrix<F> T_;    
00042   };
00043 
00044 } // namespace constraints
00045 
00046 #endif // constrElement_hh

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