types.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
* @author Fabian Reister ( fabian dot reister at kit dot edu )
17
* @date 2021
18
* @copyright http://www.gnu.org/licenses/gpl-2.0.txt
19
* GNU General Public License
20
*/
21
22
#pragma once
23
24
#include <Eigen/Geometry>
25
26
#include <
RobotAPI/libraries/ArmarXObjects/ObjectPose.h
>
27
#include <
RobotAPI/libraries/armem/core/MemoryID.h
>
28
#include <
RobotAPI/libraries/armem/core/Time.h
>
29
#include <
RobotAPI/libraries/armem_robot/types.h
>
30
#include <
RobotAPI/libraries/core/FramedPose.h
>
31
32
#include "
aron_forward_declarations.h
"
33
34
35
namespace
armarx::armem
36
{
37
struct
ObjectInstance
38
{
39
objpose::ObjectPose
pose
;
40
MemoryID
classID
;
41
MemoryID
sourceID
;
42
};
43
}
44
45
namespace
armarx::armem::attachment
46
{
47
using
AgentID
=
armem::MemoryID
;
48
using
ObjectID
=
armem::MemoryID
;
49
50
struct
AgentDescription
51
{
56
AgentID
id
;
57
58
std::string
frame
;
59
};
60
69
struct
ObjectAttachment
70
{
71
AgentDescription
agent
;
72
73
Eigen::Affine3f
transformation
;
74
75
ObjectID
object
;
76
77
armem::Time
timestamp
;
78
79
bool
active
;
80
};
81
90
struct
ArticulatedObjectAttachment
91
{
92
AgentDescription
agent
;
93
94
Eigen::Affine3f
transformation
;
95
96
AgentDescription
object
;
97
98
armem::Time
timestamp
;
99
100
bool
active
;
101
};
102
103
}
// namespace armarx::armem::attachment
104
105
namespace
armarx::armem::articulated_object
106
{
107
using
ArticulatedObjectDescription
=
armarx::armem::robot::RobotDescription
;
108
109
using
ArticulatedObject
=
armarx::armem::robot::Robot
;
110
using
ArticulatedObjects
=
armarx::armem::robot::Robots
;
111
}
// namespace armarx::armem::articulated_object
112
113
114
namespace
armarx::armem::marker
115
{
116
class
Marker
117
{
118
119
public
:
120
Marker
(
const
armarx::armem::arondto::Marker& dto);
121
Marker
(
const
std::string&
name
,
122
const
FramedPose
&
markerPose
,
123
const
FramedPose
& robotPose,
124
const
FramedPose
& rgbCameraPose,
125
const
FramedPose
& depthCameraPose);
126
127
std::string
name
;
128
FramedPose
robotGlobal
;
129
FramedPose
rgbCamera
;
130
FramedPose
depthCamera
;
131
FramedPose
markerPose
;
132
FramedPose
markerGlobal
;
133
134
FramedPose
getGlobalMarkerPose
()
const
;
135
};
136
}
// namespace armarx::armem::marker
armarx::armem::robot::Robots
std::vector< Robot > Robots
Definition:
types.h:80
armarx::armem::attachment::ObjectAttachment::transformation
Eigen::Affine3f transformation
Definition:
types.h:73
armarx::armem::marker::Marker::name
std::string name
Definition:
types.h:127
armarx::armem::attachment::ObjectAttachment::object
ObjectID object
Definition:
types.h:75
armarx::armem::attachment::ObjectAttachment
ObjectAttachment describes a fixed transformation between an agent and an object.
Definition:
types.h:69
armarx::armem::attachment::ObjectAttachment::active
bool active
Definition:
types.h:79
armarx::FramedPose
The FramedPose class.
Definition:
FramedPose.h:258
armarx::armem::robot::Robot
Definition:
types.h:68
MemoryID.h
armarx::armem::marker::Marker::rgbCamera
FramedPose rgbCamera
Definition:
types.h:129
armarx::armem::marker::Marker
Definition:
types.h:116
armarx::armem::attachment::ArticulatedObjectAttachment::object
AgentDescription object
Definition:
types.h:96
armarx::armem::attachment::AgentDescription
Definition:
types.h:50
armarx::armem::attachment::ObjectAttachment::agent
AgentDescription agent
Definition:
types.h:71
armarx::armem::marker::Marker::Marker
Marker(const armarx::armem::arondto::Marker &dto)
Definition:
types.cpp:47
armarx::armem
Definition:
LegacyRobotStateMemoryAdapter.cpp:31
armarx::armem::articulated_object::ArticulatedObjects
armarx::armem::robot::Robots ArticulatedObjects
Definition:
types.h:110
armarx::armem::ObjectInstance::classID
MemoryID classID
Definition:
types.h:40
armarx::armem::robot::RobotDescription
Definition:
types.h:17
armarx::armem::MemoryID
A memory ID.
Definition:
MemoryID.h:48
armarx::armem::marker::Marker::markerPose
FramedPose markerPose
Definition:
types.h:131
FramedPose.h
armarx::armem::attachment::ArticulatedObjectAttachment
ArticulatedObjectAttachment describes a fixed transformation between an agent and an articulated obje...
Definition:
types.h:90
armarx::armem::human::Robot
@ Robot
Definition:
util.h:14
armarx::armem::marker::Marker::getGlobalMarkerPose
FramedPose getGlobalMarkerPose() const
Definition:
types.cpp:61
armarx::armem::marker::Marker::markerGlobal
FramedPose markerGlobal
Definition:
types.h:132
armarx::armem::attachment::ArticulatedObjectAttachment::active
bool active
Definition:
types.h:100
armarx::armem::marker::Marker::robotGlobal
FramedPose robotGlobal
Definition:
types.h:128
ObjectPose.h
armarx::armem::attachment::ArticulatedObjectAttachment::transformation
Eigen::Affine3f transformation
Definition:
types.h:94
armarx::armem::marker
Definition:
types.cpp:31
armarx::armem::attachment
Definition:
Reader.cpp:22
armarx::armem::marker::Marker::depthCamera
FramedPose depthCamera
Definition:
types.h:130
armarx::armem::ObjectInstance::sourceID
MemoryID sourceID
Definition:
types.h:41
armarx::core::time::DateTime
Represents a point in time.
Definition:
DateTime.h:24
armarx::armem::ObjectInstance::pose
objpose::ObjectPose pose
Definition:
types.h:39
aron_forward_declarations.h
armarx::armem::ObjectInstance
Definition:
types.h:37
types.h
armarx::armem::articulated_object
Definition:
ArticulatedObjectReader.cpp:24
Time.h
armarx::armem::attachment::AgentDescription::frame
std::string frame
Definition:
types.h:58
armarx::armem::attachment::ObjectAttachment::timestamp
armem::Time timestamp
Definition:
types.h:77
armarx::armem::attachment::ArticulatedObjectAttachment::agent
AgentDescription agent
Definition:
types.h:92
armarx::objpose::ObjectPose
An object pose as stored by the ObjectPoseStorage.
Definition:
ObjectPose.h:36
armarx::armem::attachment::AgentDescription::id
AgentID id
id either pointing to a arondto::Robot or arondto::ArticulatedObject
Definition:
types.h:56
armarx::armem::attachment::ArticulatedObjectAttachment::timestamp
armem::Time timestamp
Definition:
types.h:98
armarx::human::MemoryID
const armem::MemoryID MemoryID
Definition:
memory_ids.cpp:29
RobotAPI
libraries
armem_objects
types.h
Generated on Tue Sep 26 2023 06:17:36 for armarx_documentation by
1.8.17