YARP
Yet Another Robot Platform
IRemoteVariables.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_DEV_IREMOTEVARIABLES_H
7 #define YARP_DEV_IREMOTEVARIABLES_H
8 
9 #include <string>
10 
11 #include <yarp/os/Bottle.h>
12 #include <yarp/os/Vocab.h>
13 #include <yarp/dev/api.h>
14 
15 namespace yarp {
16  namespace dev {
17  class IRemoteVariablesRaw;
18  class IRemoteVariables;
19  }
20 }
21 
28 {
29 public:
33  virtual ~IRemoteVariablesRaw() {}
34 
35  virtual bool getRemoteVariableRaw(std::string key, yarp::os::Bottle& val) = 0;
36 
37  virtual bool setRemoteVariableRaw(std::string key, const yarp::os::Bottle& val) = 0;
38 
39  virtual bool getRemoteVariablesListRaw(yarp::os::Bottle* listOfKeys) = 0;
40 };
41 
48 {
49 public:
53  virtual ~IRemoteVariables() {}
54 
55  virtual bool getRemoteVariable(std::string key, yarp::os::Bottle& val) = 0;
56 
57  virtual bool setRemoteVariable(std::string key, const yarp::os::Bottle& val) = 0;
58 
59  virtual bool getRemoteVariablesList(yarp::os::Bottle* listOfKeys) = 0;
60 };
61 
65 
66 
67 #endif // YARP_DEV_IREMOTEVARIABLES_H
constexpr yarp::conf::vocab32_t VOCAB_LIST_VARIABLES
constexpr yarp::conf::vocab32_t VOCAB_VARIABLE
constexpr yarp::conf::vocab32_t VOCAB_REMOTE_VARIABILE_INTERFACE
IRemoteVariablesRaw interface.
virtual bool getRemoteVariableRaw(std::string key, yarp::os::Bottle &val)=0
virtual bool getRemoteVariablesListRaw(yarp::os::Bottle *listOfKeys)=0
virtual ~IRemoteVariablesRaw()
Destructor.
virtual bool setRemoteVariableRaw(std::string key, const yarp::os::Bottle &val)=0
IRemoteVariables interface.
virtual bool setRemoteVariable(std::string key, const yarp::os::Bottle &val)=0
virtual bool getRemoteVariable(std::string key, yarp::os::Bottle &val)=0
virtual ~IRemoteVariables()
Destructor.
virtual bool getRemoteVariablesList(yarp::os::Bottle *listOfKeys)=0
A simple collection of objects that can be described and transmitted in a portable way.
Definition: Bottle.h:74
std::int32_t vocab32_t
Definition: numeric.h:78
constexpr yarp::conf::vocab32_t createVocab32(char a, char b=0, char c=0, char d=0)
Create a vocab from chars.
Definition: Vocab.h:28
The main, catch-all namespace for YARP.
Definition: dirs.h:16
#define YARP_dev_API
Definition: api.h:18