00001 #ifndef CONSTRAINTREP_H 00002 #define CONSTRAINTREP_H 00003 00004 #include "Any.h" 00005 #include "string" 00006 00007 class ConstraintRep : public Any 00008 { 00009 public: 00010 ConstraintRep( BON::FCO& ptr); 00011 /*virtual*/ std::string doDump(); 00012 /*virtual*/ std::string getName() const; 00013 /*virtual*/ std::string getDispName() const; 00014 void init( const std::string&, int m, const std::string& depth, int p, const std::string&, const std::string&); 00015 Any::KIND_TYPE getMyKind() const { return Any::CONSTRAINT; } 00016 00017 void attachedTo(); 00018 bool isAttached() const; 00019 00020 protected: 00021 void fetchEventAttribute( const std::string& event_name, unsigned int event_flag); 00022 void fetch(); 00023 00029 bool m_attached; 00030 std::string m_name; // used because artificial constraints must have a name 00031 std::string m_description; 00032 std::string m_defaultParams; 00033 std::string m_equation; 00034 int m_priority; 00035 //int m_depth; 00036 std::string m_depth; 00037 std::string m_defdForNamesp; 00038 int m_eventMask; 00039 00040 private: // forbiding copy 00041 ConstraintRep( const ConstraintRep&); 00042 const ConstraintRep& operator=( const ConstraintRep &); 00043 00044 }; 00045 #endif //CONSTRAINTREP_H