Fast DDS
Version 3.6.1.0
Fast DDS
Toggle main menu visibility
Loading...
Searching...
No Matches
Replier.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__REPLIER_HPP
16
#define FASTDDS_DDS_RPC__REPLIER_HPP
17
18
#include <fastdds/dds/core/LoanableSequence.hpp>
19
#include <fastdds/dds/rpc/RequestInfo.hpp>
20
#include <fastdds/dds/rpc/RPCEntity.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
Replier
:
public
RPCEntity
39
{
40
41
public
:
42
46
virtual
const
std::string&
get_service_name
()
const
= 0;
47
60
virtual
ReturnCode_t
send_reply
(
61
void
* data,
62
const
RequestInfo
& info) = 0;
63
71
virtual
ReturnCode_t
take_request
(
72
void
* data,
73
RequestInfo
& info) = 0;
74
83
virtual
ReturnCode_t
take_request
(
84
LoanableCollection
& data,
85
LoanableSequence<RequestInfo>
& info) = 0;
86
97
virtual
ReturnCode_t
return_loan
(
98
LoanableCollection
& data,
99
LoanableSequence<RequestInfo>
& info) = 0;
100
104
virtual
DataWriter
*
get_replier_writer
()
const
= 0;
105
109
virtual
DataReader
*
get_replier_reader
()
const
= 0;
110
111
protected
:
112
116
~Replier
() =
default
;
117
118
};
119
120
}
// namespace rpc
121
}
// namespace dds
122
}
// namesapce fastdds
123
}
// namespace eprosima
124
125
126
#endif
// FASTDDS_DDS_RPC__REPLIER_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::Replier
Base class for a Replier in the RPC communication.
Definition
Replier.hpp:39
eprosima::fastdds::dds::rpc::Replier::~Replier
~Replier()=default
Destructor.
eprosima::fastdds::dds::rpc::Replier::take_request
virtual ReturnCode_t take_request(LoanableCollection &data, LoanableSequence< RequestInfo > &info)=0
Take all request messages stored in the Replier DataReader's history.
eprosima::fastdds::dds::rpc::Replier::send_reply
virtual ReturnCode_t send_reply(void *data, const RequestInfo &info)=0
Send a reply message.
eprosima::fastdds::dds::rpc::Replier::get_service_name
virtual const std::string & get_service_name() const =0
Returns the name of the service to which the replier belongs.
eprosima::fastdds::dds::rpc::Replier::return_loan
virtual ReturnCode_t return_loan(LoanableCollection &data, LoanableSequence< RequestInfo > &info)=0
This operation indicates to the Replier's DataReader that the application is done accessing the colle...
eprosima::fastdds::dds::rpc::Replier::get_replier_reader
virtual DataReader * get_replier_reader() const =0
Getter for the Replier's DataReader.
eprosima::fastdds::dds::rpc::Replier::take_request
virtual ReturnCode_t take_request(void *data, RequestInfo &info)=0
Take a request message from the Replier DataReader's history.
eprosima::fastdds::dds::rpc::Replier::get_replier_writer
virtual DataWriter * get_replier_writer() const =0
Getter for the Replier's DataWriter.
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
Replier.hpp
Generated on
for