|
| ReqHandler (const std::string &_nUuid) |
|
std::shared_ptr< Rep > | CreateMsg (const std::string &_data) const |
| Create a specific protobuf message given its serialized data. More...
|
|
void | NotifyResult (const std::string &_rep, const bool _result) |
| Executes the callback registered for this handler and notify a potential requester waiting on a blocking call. More...
|
|
virtual std::string | RepTypeName () const |
| Get the message type name used in the service response. More...
|
|
virtual std::string | ReqTypeName () const |
| Get the message type name used in the service request. More...
|
|
bool | Serialize (std::string &_buffer) const |
| Serialize the Req protobuf message stored. More...
|
|
void | SetCallback (const std::function< void(const Rep &_rep, const bool _result)> &_cb) |
| Set the callback for this handler. More...
|
|
void | SetMessage (const Req *_reqMsg) |
| Set the REQ protobuf message for this handler. More...
|
|
void | SetResponse (const Rep *) |
| This function is only used for compatibility with SetResponse() when [REP = google::protobuf::Message]. More...
|
|
Public Member Functions inherited from ignition::transport::IReqHandler |
| IReqHandler (const std::string &_nUuid) |
| Constructor. More...
|
|
virtual | ~IReqHandler ()=default |
| Destructor. More...
|
|
std::string | HandlerUuid () const |
| Returns the unique handler UUID. More...
|
|
std::string | NodeUuid () const |
| Get the node UUID. More...
|
|
bool | Requested () const |
| Returns if this service call request has already been requested. More...
|
|
void | Requested (const bool _value) |
| Mark the service call as requested (or not). More...
|
|
std::string | Response () const |
| Get the service response as raw bytes. More...
|
|
bool | Result () const |
| Get the result of the service response. More...
|
|
template<typename Lock > |
bool | WaitUntil (Lock &_lock, const unsigned int _timeout) |
| Block the current thread until the response to the service request is available or until the timeout expires. More...
|
|
template<typename Req, typename Rep>
class ignition::transport::ReqHandler< Req, Rep >
It creates a reply handler for the specific protobuf messages used.
'Req' is a protobuf message type containing the input parameters of the service request. 'Rep' is a protobuf message type that will be filled with the service response.