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 {
17  namespace dev {
18  class IFrameTransformStorageSet;
19  class IFrameTransformStorageGet;
20  class IFrameTransformStorageUtils;
21  }
22 }
23 
25 
32 {
33 public:
35 
41  virtual bool setTransforms(const std::vector<yarp::math::FrameTransform>& transforms) = 0;
42 
48  virtual bool setTransform(const yarp::math::FrameTransform& transform) = 0;
49 
54  virtual bool clearAll() = 0;
55 
62  virtual bool deleteTransform(std::string src, std::string dst) = 0;
63 };
64 
71 {
72 public:
74 
80  virtual bool getTransforms(std::vector<yarp::math::FrameTransform>& transforms) const = 0;
81 
82 };
83 
90 {
91 public:
93 
94  virtual bool size (size_t& size) const =0;
95 
96  virtual bool getInternalContainer(FrameTransformContainer*& container) =0;
97 };
98 
99 #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
The main, catch-all namespace for YARP.
Definition: dirs.h:16
#define YARP_dev_API
Definition: api.h:18