YARP
Yet Another Robot Platform
IFrameTransformStorage.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_IFRAMETRANSFORM_STORAGE_H
7 #define YARP_DEV_IFRAMETRANSFORM_STORAGE_H
8 
9 #include <string>
10 #include <vector>
11 
12 #include <yarp/dev/api.h>
13 #include <yarp/os/Vocab.h>
15 
16 namespace yarp::dev {
17 class IFrameTransformStorageSet;
18 class IFrameTransformStorageGet;
19 class IFrameTransformStorageUtils;
20 }
21 
23 
30 {
31 public:
33 
39  virtual bool setTransforms(const std::vector<yarp::math::FrameTransform>& transforms) = 0;
40 
46  virtual bool setTransform(const yarp::math::FrameTransform& transform) = 0;
47 
52  virtual bool clearAll() = 0;
53 
60  virtual bool deleteTransform(std::string src, std::string dst) = 0;
61 };
62 
69 {
70 public:
72 
78  virtual bool getTransforms(std::vector<yarp::math::FrameTransform>& transforms) const = 0;
79 };
80 
87 {
88 public:
90 
91  virtual bool size (size_t& size) const =0;
92 
93  virtual bool getInternalContainer(FrameTransformContainer*& container) =0;
94 
95  virtual bool startStorageThread() = 0;
96 
97  virtual bool stopStorageThread() = 0;
98 };
99 
100 #endif // YARP_DEV_IFRAMETRANSFORM_STORAGE_H
FrameTransformContainer: A class that contains a vector of frame transformations and exposes yarp::de...
virtual bool getTransforms(std::vector< yarp::math::FrameTransform > &transforms) const =0
Obtains all frame transforms saved in a storage.
virtual bool deleteTransform(std::string src, std::string dst)=0
Delete a single transform in the storage.
virtual bool setTransform(const yarp::math::FrameTransform &transform)=0
Save a frame transform in a storage.
virtual bool setTransforms(const std::vector< yarp::math::FrameTransform > &transforms)=0
Save some frame transforms in a storage.
virtual bool clearAll()=0
Delete all transforms in a storage.
virtual bool size(size_t &size) const =0
virtual bool getInternalContainer(FrameTransformContainer *&container)=0
For streams capable of holding different kinds of content, check what they actually have.
The main, catch-all namespace for YARP.
Definition: dirs.h:16
#define YARP_dev_API
Definition: api.h:18