ConnectorBase.h

説明を見る。
00001 
00020 #ifndef RTC_CONNECTORBASE_H
00021 #define RTC_CONNECTORBASE_H
00022 
00023 #include <coil/stringutil.h>
00024 #include <coil/Properties.h>
00025 
00026 #include <rtm/RTC.h>
00027 #include <rtm/CdrBufferBase.h>
00028 #include <rtm/DataPortStatus.h>
00029 #include <rtm/SystemLogger.h>
00030 
00031 namespace RTC
00032 {
00054   class ConnectorBase
00055     : public DataPortStatus
00056   {
00057   public:
00058     DATAPORTSTATUS_ENUM
00059 
00079     struct Profile
00080     {
00081       Profile(const char* name_, const char* id_,
00082               coil::vstring ports_, coil::Properties properties_)
00083         : name(name_), id(id_)
00084         , ports(ports_), properties(properties_)
00085       {
00086       }
00087       std::string name;
00088       std::string id;
00089       coil::vstring ports;
00090       coil::Properties properties;
00091     };
00092 
00093     typedef std::vector<Profile> ProfileList;
00094     typedef std::vector<ConnectorBase*> ConnectorList;
00095 
00103     virtual ~ConnectorBase(){};
00104 
00118     virtual const Profile& profile() = 0;
00119 
00133     virtual const char* id() = 0;
00134 
00148     virtual const char* name() = 0;
00149 
00163     virtual ReturnCode disconnect() = 0;
00164 
00178     virtual CdrBufferBase* getBuffer() = 0;
00179 
00180     virtual void activate() = 0;
00181     virtual void deactivate() = 0;
00182 
00183   private:
00184     // non-copyable class
00185     //    ConnectorBase(const ConnectorBase& x);
00186     //    ConnectorBase& operator=(const ConnectorBase& x);
00187   };
00188 }; // namespace RTC
00189 
00190 #endif // RTC_CONNECTORBASE_H

OpenRTMに対してSun May 24 14:08:25 2009に生成されました。  doxygen 1.5.3