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
16namespace yarp::dev {
17class IFrameTransformStorageSet;
18class IFrameTransformStorageGet;
19class IFrameTransformStorageUtils;
20}
21
23
30{
31public:
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{
70public:
72
78 virtual bool getTransforms(std::vector<yarp::math::FrameTransform>& transforms) const = 0;
79};
80
87{
88public:
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