YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
ModifyingCarrier.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-License-Identifier: BSD-3-Clause
4 */
5
6#ifndef YARP_OS_MODIFYINGCARRIER_H
7#define YARP_OS_MODIFYINGCARRIER_H
8
10
11namespace yarp::os {
12
19{
20public:
21 Carrier* create() const override = 0;
22
23 std::string getName() const override = 0;
24
25 bool checkHeader(const yarp::os::Bytes& header) override;
26 void getHeader(yarp::os::Bytes& header) const override;
27 bool respondToHeader(yarp::os::ConnectionState& proto) override;
28 bool modifiesIncomingData() const override;
29 bool modifiesOutgoingData() const override;
30 bool modifiesReply() const override;
31 void setCarrierParams(const yarp::os::Property& params) override;
32 void getCarrierParams(yarp::os::Property& params) const override;
33 bool configureFromProperty(yarp::os::Property& prop) override;
34 // only remains to implement modifyIncomingData()
35};
36
37} // namespace yarp::os
38
39#endif // YARP_OS_MODIFYINGCARRIER_H
A starter class for implementing simple carriers.
A simple abstraction for a block of bytes.
Definition Bytes.h:24
A base class for connection types (tcp, mcast, shmem, ...) which are called carriers in YARP.
Definition Carrier.h:44
The basic state of a connection - route, streams in use, etc.
A starter class for implementing simple modifying carriers.
Carrier * create() const override=0
Factory method.
std::string getName() const override=0
Get the name of this connection type ("tcp", "mcast", "shmem", ...)
A class for storing options and configuration information.
Definition Property.h:33
An interface to the operating system, including Port based communication.
#define YARP_os_API
Definition api.h:18