YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
FrameTransformSetMultiplexer.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
18#include <yarp/dev/PolyDriver.h>
19
20#ifndef YARP_DEV_FRAMETRANSFORMSETMULTIPLEXER_H
21#define YARP_DEV_FRAMETRANSFORMSETMULTIPLEXER_H
22
27{
28public:
34
35 // yarp::dev::DeviceDriver
36 bool open (yarp::os::Searchable &config) override;
37 bool close () override;
38
39 // yarp::dev::IMultipleWrapper
40 bool attachAll(const yarp::dev::PolyDriverList& devices2attach) override;
41 bool detachAll() override;
42
43 // yarp::dev::IFrameTransformStorageSet
45 yarp::dev::ReturnValue setTransforms(const std::vector<yarp::math::FrameTransform>& transforms) override;
46 yarp::dev::ReturnValue deleteTransform(std::string t1, std::string t2) override;
48
49 void startThreads();
50 void stopThreads();
51
52private:
53 int m_verbose{4};
54 std::vector<yarp::dev::IFrameTransformStorageSet*> m_iFrameTransformStorageSetList;
55 std::vector<yarp::dev::IFrameTransformStorageUtils*> m_iFrameTransformStorageUtilsList;
56 std::vector<std::vector<yarp::math::FrameTransform>> m_transformVector;
57 std::vector<std::mutex> m_mutexSettingFromAttachedDevices;
58};
59
60
61#endif // YARP_DEV_FRAMETRANSFORMSETMULTIPLEXER_H
A multiplexer which forwards the input of one IFrameTransformStorageSet interfaces to many.
FrameTransformSetMultiplexer & operator=(const FrameTransformSetMultiplexer &)=delete
bool close() override
Close the DeviceDriver.
bool detachAll() override
Detach the object (you must have first called attach).
FrameTransformSetMultiplexer(FrameTransformSetMultiplexer &&)=delete
FrameTransformSetMultiplexer & operator=(FrameTransformSetMultiplexer &&)=delete
FrameTransformSetMultiplexer(const FrameTransformSetMultiplexer &)=delete
yarp::dev::ReturnValue deleteTransform(std::string t1, std::string t2) override
Delete a single transform in the storage.
yarp::dev::ReturnValue setTransforms(const std::vector< yarp::math::FrameTransform > &transforms) override
Save some frame transforms in a storage.
yarp::dev::ReturnValue clearAll() override
Delete all transforms in a storage.
bool open(yarp::os::Searchable &config) override
Device driver interface.
bool attachAll(const yarp::dev::PolyDriverList &devices2attach) override
Attach to a list of objects.
yarp::dev::ReturnValue setTransform(const yarp::math::FrameTransform &transform) override
Save a frame transform in a storage.
Interface implemented by all device drivers.
Helper interface for an object that can wrap/or "attach" to one or more other devices.
A base class for nested structures that can be searched.
Definition Searchable.h:31