YarpServiceAsynchReplyPort.hpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef __COMMUNICATION_YARPSERVICEASYNCHREPLYPORT_H
00031 #define __COMMUNICATION_YARPSERVICEASYNCHREPLYPORT_H
00032
00033 namespace mermaid
00034 {
00035 namespace support
00036 {
00037 namespace communication
00038 {
00039 class YarpServiceAsynchReplyPort;
00040 }
00041 }
00042 }
00043
00044 #include "YarpServiceAsynchReplyType.hpp"
00045
00046
00047 #include <Service.hpp>
00048
00049 #include <yarp/os/all.h>
00050 #include <string>
00051
00052 namespace mermaid
00053 {
00054 namespace support
00055 {
00056 namespace communication
00057 {
00058
00059 using yarp::os::Bottle;
00060 using yarp::os::BufferedPort;
00061
00062 using boost::shared_ptr;
00063 using mermaid::support::service::Service;
00064
00065
00066
00067
00068
00069
00070 class YarpServiceAsynchReplyPort : public BufferedPort<YarpServiceAsynchReplyType>
00071 {
00072 public:
00073 YarpServiceAsynchReplyPort (shared_ptr<Service> requesterService, std::string targetEntityName, std::string targetServiceName);
00074 virtual ~YarpServiceAsynchReplyPort();
00075
00076 virtual void onRead (YarpServiceAsynchReplyType& reply);
00077
00078 private:
00079 shared_ptr<Service> requesterService_;
00080
00081 };
00082 }
00083 }
00084 }
00085
00086 #endif // __COMMUNICATION_YARPSERVICEASYNCHREPLYPORT_H