YarpServiceAsynchOutputPort.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_YARPSERVICEASYNCHOUTPUTPORT_H
00031 #define __COMMUNICATION_YARPSERVICEASYNCHOUTPUTPORT_H
00032
00033 namespace mermaid
00034 {
00035 namespace support
00036 {
00037 namespace communication
00038 {
00039 class YarpServiceAsynchOutputPort;
00040 }
00041 }
00042 }
00043
00044 #include "YarpServiceAsynchReplyType.hpp"
00045
00046
00047 #include <Service.hpp>
00048
00049 #include <yarp/os/all.h>
00050
00051 #include <string>
00052
00053 namespace mermaid
00054 {
00055 namespace support
00056 {
00057 namespace communication
00058 {
00059
00060 using boost::shared_ptr;
00061 using mermaid::support::service::Service;
00062
00063 using yarp::os::BufferedPort;
00064
00065
00066
00067
00068
00069
00070 class YarpServiceAsynchOutputPort : public BufferedPort<YarpServiceAsynchReplyType>
00071 {
00072
00073 public:
00074 YarpServiceAsynchOutputPort (shared_ptr<Service> targetService, std::string requesterEntityName, std::string requesterServiceName);
00075
00076 YarpServiceAsynchReplyType& prepare();
00077
00078 private:
00079 shared_ptr<Service> targetService_;
00080 std::string requesterEntityName_;
00081 std::string requesterServiceName_;
00082
00083 };
00084 }
00085 }
00086 }
00087 #endif // __COMMUNICATION_YARPSERVICEASYNCHOUTPUTPORT_H
00088