InPortCorbaCdrConsumer.h
Go to the documentation of this file.
00001 // -*- C++ -*-
00020 #ifndef RTC_INPORTCORBACDRCONSUMER_H
00021 #define RTC_INPORTCORBACDRCONSUMER_H
00022 
00023 
00024 //#include <rtm/BufferBase.h>
00025 
00026 #include <rtm/idl/DataPortSkel.h>
00027 #include <rtm/CorbaConsumer.h>
00028 #include <rtm/InPortConsumer.h>
00029 #include <rtm/Manager.h>
00030 
00031 namespace RTC
00032 {
00057   class InPortCorbaCdrConsumer
00058     : public InPortConsumer,
00059       public CorbaConsumer< ::OpenRTM::InPortCdr >
00060   {
00061   public:
00062     DATAPORTSTATUS_ENUM
00080     InPortCorbaCdrConsumer(void);
00081     
00095     virtual ~InPortCorbaCdrConsumer(void);
00096 
00124     virtual void init(coil::Properties& prop);
00125 
00158     virtual ReturnCode put(const cdrMemoryStream& data);
00159 
00183     virtual void publishInterfaceProfile(SDOPackage::NVList& properties);
00184 
00207     virtual bool subscribeInterface(const SDOPackage::NVList& properties);
00208     
00226     virtual void unsubscribeInterface(const SDOPackage::NVList& properties);
00227 
00228   private:
00242     bool subscribeFromIor(const SDOPackage::NVList& properties);
00243 
00257     bool subscribeFromRef(const SDOPackage::NVList& properties);
00258 
00272     bool unsubscribeFromIor(const SDOPackage::NVList& properties);
00273 
00287     bool unsubscribeFromRef(const SDOPackage::NVList& properties);
00288     
00289   private:
00297     InPortConsumer::ReturnCode convertReturnCode(OpenRTM::PortStatus ret);
00298 
00299     mutable Logger rtclog;
00300     coil::Properties m_properties;
00301   };
00302 };     // namespace RTC
00303 
00304 extern "C"
00305 {
00319   void InPortCorbaCdrConsumerInit(void);
00320 };
00321 
00322 #endif // RTC_INPORTCORBACDRCONSUMER_H
00323 


openrtm_aist
Author(s): Noriaki Ando
autogenerated on Thu Aug 27 2015 14:16:37