YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
RpcClient.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-FileCopyrightText: 2006-2010 RobotCub Consortium
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#ifndef YARP_OS_RPCCLIENT_H
8#define YARP_OS_RPCCLIENT_H
9
11
12namespace yarp::os {
13
22{
23public:
27 RpcClient();
28
32 ~RpcClient() override;
33
34 // Non-copyable
35 RpcClient(const RpcClient& alt) = delete;
36 const RpcClient& operator=(const RpcClient& alt) = delete;
37
38 // documented in UnbufferedContactable
39 bool read(PortReader& reader, bool willReply = false) override;
40
41 // documented in UnbufferedContactable
42 bool reply(PortWriter& writer) override;
43
44 // documented in UnbufferedContactable
45 bool replyAndDrop(PortWriter& writer) override;
46
47 void setInputMode(bool expectInput) override;
48 void setOutputMode(bool expectOutput) override;
49 void setRpcMode(bool expectRpc) override;
50
51 Port& asPort() override;
52 const Port& asPort() const override;
53
54#ifndef DOXYGEN_SHOULD_SKIP_THIS
55private:
56 class Private;
57 Private* mPriv;
58#endif // DOXYGEN_SHOULD_SKIP_THIS
59};
60
61} // namespace yarp::os
62
63#endif // YARP_OS_RPCCLIENT_H
A default implementation of an abstract port.
A mini-server for performing network communication in the background.
Interface implemented by all objects that can read themselves from the network, such as Bottle object...
Definition PortReader.h:24
Interface implemented by all objects that can write themselves to the network, such as Bottle objects...
Definition PortWriter.h:23
A mini-server for network communication.
Definition Port.h:46
A port that is specialized as an RPC client.
Definition RpcClient.h:22
const RpcClient & operator=(const RpcClient &alt)=delete
RpcClient(const RpcClient &alt)=delete
An interface to the operating system, including Port based communication.
#define YARP_os_API
Definition api.h:18