00001 #ifndef CONNECTIONREP_H 00002 #define CONNECTIONREP_H 00003 00004 #include "FCO.h" 00005 #include "ConnJoint.h" 00006 #include "list" 00007 00009 class ConnectionRep : public FCO 00010 { 00011 public: 00012 ConnectionRep( BON::FCO& ptr, BON::FCO& resp_ptr); 00013 /*virtual*/ ~ConnectionRep(); 00014 00015 public: 00016 inline Any::KIND_TYPE getMyKind() const { return Any::CONN; } 00017 void addJoint( ConnJoint & joint); 00018 void appendJointElements( const ConnJoint & joint); 00019 00020 void inherit(); 00021 00022 bool checkConnectionTargets(); 00023 00024 std::string doDump(); 00025 00026 bool calcLCD(); 00027 bool createEndGetters(); 00028 void addMethod( Method& m) { m_connMethods.push_back( m); } 00029 00030 protected: 00031 std::list<ConnJoint> m_jointList; 00032 std::vector< Method> m_connMethods; 00033 00034 private: // forbiding copy 00035 ConnectionRep( const ConnectionRep&); 00036 const ConnectionRep& operator=( const ConnectionRep&); 00037 }; 00038 00039 #endif //CONNECTIONREP_H