YarpServiceAsynchRequestType.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_YARPSERVICEAYNCHREQUESTTYPE_H
00031 #define __COMMUNICATION_YARPSERVICEAYNCHREQUESTTYPE_H
00032
00033 namespace mermaid
00034 {
00035 namespace support
00036 {
00037 namespace communication
00038 {
00039 class YarpServiceAsynchRequestType;
00040 }
00041 }
00042 }
00043
00044 #include <yarp/os/all.h>
00045
00046
00047 #include <ServiceRequest.hpp>
00048
00049 #include <string>
00050
00051 namespace mermaid
00052 {
00053 namespace support
00054 {
00055 namespace communication
00056 {
00057
00058 using boost::shared_ptr;
00059 using mermaid::support::service::ServiceRequest;
00060
00061 using yarp::os::Bottle;
00062 using yarp::os::ConnectionReader;
00063 using yarp::os::ConnectionWriter;
00064 using yarp::os::Portable;
00065
00066
00067
00068
00069
00070
00071 class YarpServiceAsynchRequestType : public Portable
00072 {
00073 public:
00074 YarpServiceAsynchRequestType();
00075 YarpServiceAsynchRequestType (std::string requesterEntityName, std::string requesterServiceName, std::string targetEntityName, std::string targetServiceName, std::string targetServiceInterfaceName, int requestId);
00076 YarpServiceAsynchRequestType (const YarpServiceAsynchRequestType &ysart);
00077 YarpServiceAsynchRequestType& operator= (const YarpServiceAsynchRequestType &ysart);
00078
00079 virtual bool write (ConnectionWriter& connection);
00080 virtual bool read (ConnectionReader& connection);
00081
00082 void setTargetEntityName (std::string targetEntityName);
00083 void setTargetServiceName (std::string targetServiceName);
00084
00085 std::string getRequesterEntityName();
00086 std::string getRequesterServiceName();
00087 std::string getTargetEntityName();
00088 std::string getTargetServiceName();
00089 std::string getTargetServiceInterfaceName();
00090 int getRequestId();
00091 Bottle& getRequestData();
00092
00093
00094 void convertFromServiceRequest (ServiceRequest &sar);
00095 shared_ptr<ServiceRequest> convertToServiceRequest();
00096
00097
00098
00099
00100
00101 private:
00102
00103 std::string requesterEntityName_;
00104 std::string requesterServiceName_;
00105 std::string targetEntityName_;
00106 std::string targetServiceName_;
00107 std::string targetServiceInterfaceName_;
00108 int requestId_;
00109 Bottle requestData_;
00110
00111 };
00112
00113 }
00114 }
00115 }
00116
00117 #endif // __COMMUNICATION_YARPSERVICEAYNCHREQUESTTYPE_H