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

geometry/semantics.hh
Go to the documentation of this file.
00001 /* Interface to create boundary conditions
00002  */
00003 
00004 #ifndef semantics_hh
00005 #define semantics_hh
00006 
00007 #include "basics/outputOperator.hh"
00008 
00009 namespace concepts {
00010 
00011   // forward declarations
00012   class Attribute;
00013 
00014   // ************************************************************* Semantics **
00015 
00018   template<class T>
00019   class Semantics : public OutputOperator {
00020   public:
00022     virtual T operator()(Attribute attrib) const = 0;
00023   protected:
00024     virtual std::ostream& info(std::ostream& os) const {
00025       return os << "Semantics()"; }
00026   };
00027 
00028   // ********************************************************* AttributeBool **
00029 
00033   class AttributeBool : public Semantics<bool> {
00034   public:
00038     bool operator()(Attribute attrib) const;
00039   protected:
00040     virtual std::ostream& info(std::ostream& os) const;
00041   };
00042 
00043 } // namespace concepts
00044 
00045 #endif // semantics_hh

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