memory_definitions.cpp
Go to the documentation of this file.
1
#include "
memory_definitions.h
"
2
3
#include <map>
4
#include <vector>
5
6
#include <
ArmarXCore/core/exceptions/local/ExpressionException.h
>
7
8
#include <
RobotAPI/libraries/aron/core/data/variant/container/Dict.h
>
9
10
#include "
error.h
"
11
12
namespace
armarx::armem::wm
13
{
14
15
bool
16
EntityInstance::equalsDeep
(
const
EntityInstance
& other)
const
17
{
18
if
(
_data
and other.
data
())
19
{
20
return
id
() == other.
id
() &&
_metadata
== other.
metadata
() && *
_data
== *other.
data
();
21
}
22
if
(
_data
or other.
data
())
23
{
24
return
false
;
25
}
26
return
id
() == other.
id
() &&
_metadata
== other.
metadata
();
27
}
28
29
void
30
EntityInstance::update
(
const
EntityUpdate
&
update
)
31
{
32
ARMARX_CHECK_FITS_SIZE
(this->
index
(), update.
instancesData
.size());
33
34
this->
data
() = update.
instancesData
.at(
size_t
(this->
index
()));
35
36
this->
_metadata
.confidence =
update
.confidence;
37
38
this->
_metadata
.referencedTime =
update
.referencedTime;
39
this->
_metadata
.sentTime =
update
.sentTime;
40
this->
_metadata
.arrivedTime =
update
.arrivedTime;
41
this->
_metadata
.origin =
update
.origin;
42
}
43
44
}
// namespace armarx::armem::wm
ExpressionException.h
armarx::armem::base::EntityInstanceBase< EntityInstanceDataPtr, EntityInstanceMetadata >::_data
DataT _data
Definition
EntityInstanceBase.h:195
armarx::armem::base::EntityInstanceBase::metadata
MetadataT & metadata()
Definition
EntityInstanceBase.h:120
armarx::armem::base::EntityInstanceBase< EntityInstanceDataPtr, EntityInstanceMetadata >::_metadata
MetadataT _metadata
Definition
EntityInstanceBase.h:192
armarx::armem::base::EntityInstanceBase< EntityInstanceDataPtr, EntityInstanceMetadata >::index
int & index()
Definition
EntityInstanceBase.h:106
armarx::armem::base::EntityInstanceBase::data
const DataT & data() const
Definition
EntityInstanceBase.h:132
armarx::armem::base::detail::MemoryItem::id
MemoryID & id()
Definition
MemoryItem.h:25
armarx::armem::wm::EntityInstance
Client-side working entity instance.
Definition
memory_definitions.h:34
armarx::armem::wm::EntityInstance::equalsDeep
bool equalsDeep(const EntityInstance &other) const
Definition
memory_definitions.cpp:16
armarx::armem::wm::EntityInstance::update
void update(const EntityUpdate &update)
Fill *this with the update's values.
Definition
memory_definitions.cpp:30
Dict.h
memory_definitions.h
error.h
ARMARX_CHECK_FITS_SIZE
#define ARMARX_CHECK_FITS_SIZE(number, size)
Check whether number is nonnegative (>= 0) and less than size.
Definition
ExpressionException.h:159
armarx::armem::wm
Definition
MemoryNameSystem.h:51
armarx::armem::EntityUpdate
An update of an entity for a specific point in time.
Definition
Commit.h:26
armarx::armem::EntityUpdate::instancesData
std::vector< aron::data::DictPtr > instancesData
The entity data.
Definition
Commit.h:31
RobotAPI
libraries
armem
core
wm
memory_definitions.cpp
Generated by
1.13.2