SubscriptionTransport.hh
00001 #ifndef SUBSCRIPTIONTRANSPORT_HH
00002 #define SUBSCRIPTIONTRANSPORT_HH
00003 
00004 #include <boost/shared_ptr.hpp>
00005 
00006 #include "Connection.hh"
00007 #include "CallbackHelper.hh"
00008 
00009 namespace gazebo
00010 {
00011   namespace transport
00012   {
00015 
00016 
00018     class SubscriptionTransport : public CallbackHelper
00019     {
00021       public: SubscriptionTransport();
00022 
00024       public: virtual ~SubscriptionTransport();
00025 
00027       public: void Init(const ConnectionPtr &conn, bool _latching);
00028 
00030       public: virtual std::string GetMsgType() const;
00031 
00032       public: virtual bool HandleMessage(const google::protobuf::Message *msg);
00033 
00035       public: virtual bool HandleData(const std::string &newdata);
00036 
00038       public: const ConnectionPtr &GetConnection() const;
00039 
00042       public: virtual bool IsLocal() const;
00043 
00044       private: ConnectionPtr connection;
00045     };
00047   }
00048 }
00049 
00050 #endif