Fast DDS
Version 3.6.1.0
Fast DDS
Toggle main menu visibility
Loading...
Searching...
No Matches
Requester.hpp
1
// Copyright 2025 Proyectos y Sistemas de Mantenimiento SL (eProsima).
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
// http://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14
15
#ifndef FASTDDS_DDS_RPC__REQUESTER_HPP
16
#define FASTDDS_DDS_RPC__REQUESTER_HPP
17
18
#include <fastdds/dds/core/LoanableSequence.hpp>
19
#include <fastdds/dds/rpc/RPCEntity.hpp>
20
#include <fastdds/dds/rpc/RequestInfo.hpp>
21
22
namespace
eprosima
{
23
namespace
fastdds
{
24
namespace
dds
{
25
26
class
LoanableCollection
;
27
class
DataWriter
;
28
class
DataReader
;
29
30
}
// namespace dds
31
32
namespace
dds
{
33
namespace
rpc
{
34
38
class
Requester
:
public
RPCEntity
39
{
40
41
public
:
42
46
virtual
const
std::string&
get_service_name
()
const
= 0;
47
58
virtual
ReturnCode_t
send_request
(
59
void
* data,
60
RequestInfo
& info) = 0;
61
69
virtual
ReturnCode_t
take_reply
(
70
void
* data,
71
RequestInfo
& info) = 0;
72
81
virtual
ReturnCode_t
take_reply
(
82
LoanableCollection
& data,
83
LoanableSequence<RequestInfo>
& info) = 0;
84
95
virtual
ReturnCode_t
return_loan
(
96
LoanableCollection
& data,
97
LoanableSequence<RequestInfo>
& info) = 0;
98
102
virtual
DataWriter
*
get_requester_writer
()
const
= 0;
103
107
virtual
DataReader
*
get_requester_reader
()
const
= 0;
108
109
protected
:
110
114
~Requester
() =
default
;
115
116
};
117
118
}
// namespace rpc
119
}
// namespace dds
120
}
// namespace fastdds
121
}
// namespace eprosima
122
123
#endif
// FASTDDS_DDS_RPC__REQUESTER_HPP
eprosima::fastdds::dds::DataReader
Class DataReader, contains the actual implementation of the behaviour of the Subscriber.
Definition
DataReader.hpp:85
eprosima::fastdds::dds::DataWriter
Class DataWriter, contains the actual implementation of the behaviour of the DataWriter.
Definition
DataWriter.hpp:68
eprosima::fastdds::dds::LoanableCollection
A collection of generic opaque pointers that can receive the buffer from outside (loan).
Definition
LoanableCollection.hpp:34
eprosima::fastdds::dds::LoanableSequence
A type-safe, ordered collection of elements that can receive the buffer from outside (loan).
Definition
LoanableSequence.hpp:63
eprosima::fastdds::dds::rpc::RPCEntity
Abstract base class for all RPC Objects.
Definition
RPCEntity.hpp:30
eprosima::fastdds::dds::rpc::Requester
Base class for a Requester in the RPC communication.
Definition
Requester.hpp:39
eprosima::fastdds::dds::rpc::Requester::~Requester
~Requester()=default
Destructor.
eprosima::fastdds::dds::rpc::Requester::take_reply
virtual ReturnCode_t take_reply(void *data, RequestInfo &info)=0
Take a reply message from the Requester DataReader's history.
eprosima::fastdds::dds::rpc::Requester::take_reply
virtual ReturnCode_t take_reply(LoanableCollection &data, LoanableSequence< RequestInfo > &info)=0
Take all reply messages stored in the Requester DataReader's history.
eprosima::fastdds::dds::rpc::Requester::get_service_name
virtual const std::string & get_service_name() const =0
Returns the name of the service to which the requester belongs.
eprosima::fastdds::dds::rpc::Requester::get_requester_writer
virtual DataWriter * get_requester_writer() const =0
Getter for the Requester's DataWriter.
eprosima::fastdds::dds::rpc::Requester::return_loan
virtual ReturnCode_t return_loan(LoanableCollection &data, LoanableSequence< RequestInfo > &info)=0
This operation indicates to the Requester's DataReader that the application is done accessing the col...
eprosima::fastdds::dds::rpc::Requester::get_requester_reader
virtual DataReader * get_requester_reader() const =0
Getter for the Requester's DataReader.
eprosima::fastdds::dds::rpc::Requester::send_request
virtual ReturnCode_t send_request(void *data, RequestInfo &info)=0
Send a request message.
eprosima::fastdds::dds::rpc
Definition
DomainParticipant.hpp:59
eprosima::fastdds::dds::rpc::RequestInfo
SampleInfo RequestInfo
Definition
RequestInfo.hpp:25
eprosima::fastdds::dds
Definition
BuiltinTopicKey.hpp:26
eprosima::fastdds::dds::ReturnCode_t
int32_t ReturnCode_t
Definition
DDSReturnCode.hpp:59
eprosima::fastdds
eprosima
eProsima namespace.
include
fastdds
dds
rpc
Requester.hpp
Generated on
for