TransformReader.h
Go to the documentation of this file.
1
/*
2
* This file is part of ArmarX.
3
*
4
* ArmarX is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License version 2 as
6
* published by the Free Software Foundation.
7
*
8
* ArmarX is distributed in the hope that it will be useful, but
9
* WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15
*
16
* @package RobotAPI::ArmarXObjects::
17
* @author Fabian Reister ( fabian dot reister at kit dot edu )
18
* @date 2021
19
* @copyright http://www.gnu.org/licenses/gpl-2.0.txt
20
* GNU General Public License
21
*/
22
23
#pragma once
24
25
#include <mutex>
26
27
#include <
RobotAPI/libraries/armem/client/MemoryNameSystem.h
>
28
#include <
RobotAPI/libraries/armem/client/Reader.h
>
29
30
#include "
interfaces.h
"
31
32
namespace
armarx::armem::robot_state::client::localization
33
{
34
/**
35
* @defgroup Component-ExampleClient ExampleClient
36
* @ingroup RobotAPI-Components
37
* A description of the component ExampleClient.
38
*
39
* @class TransformReader
40
* @ingroup Component-ExampleClient
41
* @brief Brief description of class ExampleClient.
42
*
43
* Detailed description of class ExampleClient.
44
*/
45
class
TransformReader
:
virtual
public
TransformReaderInterface
46
{
47
public
:
48
TransformReader
() =
default
;
49
TransformReader
(
const
TransformReader
&);
50
51
~TransformReader
()
override
;
52
53
void
connect
(
armem::client::MemoryNameSystem
& memoryNameSystem)
override
;
54
55
TransformResult
getGlobalPose
(
const
std::string& agentName,
56
const
std::string& robotRootFrame,
57
const
armem::Time
& timestamp)
const override
;
58
59
TransformResult
lookupTransform
(
const
TransformQuery
& query)
const override
;
60
61
void
registerPropertyDefinitions
(::
armarx::PropertyDefinitionsPtr
& def)
override
;
62
63
armem::client::Reader
64
getMemoryReader
()
65
{
66
return
memoryReader;
67
}
68
69
private
:
70
armem::client::Reader
memoryReader;
71
mutable
std::mutex memoryReaderMutex;
72
73
// Properties
74
struct
Properties
75
{
76
std::string
memoryName
=
"RobotState"
;
77
std::string localizationSegment =
"Localization"
;
78
} properties;
79
80
const
std::string propertyPrefix =
"mem.robot_state."
;
81
};
82
}
// namespace armarx::armem::robot_state::client::localization
armarx::armem::client::Reader
Reads data from a memory server.
Definition:
Reader.h:23
armarx::armem::robot_state::client::localization::TransformReader::getGlobalPose
TransformResult getGlobalPose(const std::string &agentName, const std::string &robotRootFrame, const armem::Time ×tamp) const override
Definition:
TransformReader.cpp:101
Reader.h
armarx::armem::robot_state::client::localization::TransformReader::lookupTransform
TransformResult lookupTransform(const TransformQuery &query) const override
Definition:
TransformReader.cpp:136
interfaces.h
armarx::armem::robot_state::client::localization::TransformReader::~TransformReader
~TransformReader() override
armarx::armem::robot_state::client::localization::TransformReader::getMemoryReader
armem::client::Reader getMemoryReader()
Definition:
TransformReader.h:64
armarx::armem::robot_state::localization::TransformQuery
Definition:
types.h:76
armarx::armem::robot_state::client::localization
Definition:
interfaces.h:33
armarx::armem::robot_state::client::localization::TransformReader::connect
void connect(armem::client::MemoryNameSystem &memoryNameSystem) override
Definition:
TransformReader.cpp:84
armarx::armem::robot_state::client::localization::TransformReader
Brief description of class ExampleClient.
Definition:
TransformReader.h:45
armarx::armem::robot_state::client::localization::TransformReader::TransformReader
TransformReader()=default
armarx::armem::robot_state::client::localization::TransformReader::registerPropertyDefinitions
void registerPropertyDefinitions(::armarx::PropertyDefinitionsPtr &def) override
Definition:
TransformReader.cpp:70
armarx::core::time::DateTime
Represents a point in time.
Definition:
DateTime.h:24
armarx::armem::robot_state::localization::TransformResult
Definition:
types.h:33
armarx::armem::laser_scans::constants::memoryName
const std::string memoryName
Definition:
constants.h:28
IceUtil::Handle< class PropertyDefinitionContainer >
armarx::armem::client::MemoryNameSystem
The memory name system (MNS) client.
Definition:
MemoryNameSystem.h:68
MemoryNameSystem.h
armarx::armem::robot_state::client::localization::TransformReaderInterface
Definition:
interfaces.h:48
RobotAPI
libraries
armem_robot_state
client
localization
TransformReader.h
Generated on Sat Mar 29 2025 09:17:29 for armarx_documentation by
1.8.17