|
#include <RobotAPI/libraries/armem/server/wm/memory_definitions.h>
Public Member Functions | |
void | setMaxHistorySize (long maxSize) |
Sets the maximum history size. More... | |
UpdateResult | update (const EntityUpdate &update) |
![]() | |
EntitySnapshotT & | addSnapshot (const EntitySnapshotT &snapshot) |
Copy and insert a snapshot. More... | |
EntitySnapshotT & | addSnapshot (const Time ×tamp) |
Add a snapshot at the given time. More... | |
EntitySnapshotT & | addSnapshot (const Time ×tamp, Args... args) |
Insert a snapshot in-place. More... | |
EntitySnapshotT & | addSnapshot (EntitySnapshotT &&snapshot) |
Move and insert a snapshot. More... | |
void | append (const OtherDerivedT &other) |
EntityBase () | |
EntityBase (const EntityBase &other)=default | |
EntityBase (const MemoryID &id) | |
EntityBase (const std::string &name, const MemoryID &parentID={}) | |
EntityBase (EntityBase &&other)=default | |
bool | equalsDeep (const DerivedT &other) const |
EntitySnapshotT * | findFirstSnapshot () |
Return the snapshot with the least recent timestamp. More... | |
const EntitySnapshotT * | findFirstSnapshot () const |
const EntitySnapshotT * | findFirstSnapshotAfter (const Time &time) const |
Return first snapshot after time. More... | |
const EntitySnapshotT * | findFirstSnapshotAfterOrAt (const Time &time) const |
Return first snapshot after or at time. More... | |
auto * | findLatestInstance (int instanceIndex=0) |
const auto * | findLatestInstance (int instanceIndex=0) const |
EntitySnapshotT * | findLatestSnapshot () |
Return the snapshot with the most recent timestamp. More... | |
const EntitySnapshotT * | findLatestSnapshot () const |
const EntitySnapshotT * | findLatestSnapshotBefore (const Time &time) const |
Return the lastest snapshot before time. More... | |
const EntitySnapshotT * | findLatestSnapshotBeforeOrAt (const Time &time) const |
Return the latest snapshot before or at time. More... | |
EntitySnapshotT * | findSnapshot (const MemoryID &snapshotID) |
const EntitySnapshotT * | findSnapshot (const MemoryID &snapshotID) const |
EntitySnapshotT * | findSnapshot (const Time ×tamp) |
const EntitySnapshotT * | findSnapshot (const Time ×tamp) const |
bool | forEachInstanceIn (const MemoryID &id, InstanceFunctionT &&func) |
bool | forEachInstanceIn (const MemoryID &id, InstanceFunctionT &&func) const |
bool | forEachSnapshot (SnapshotFunctionT &&func) |
bool | forEachSnapshot (SnapshotFunctionT &&func) const |
void | forEachSnapshotBefore (const Time &time, FunctionT &&func) const |
Return all snapshots before (excluding) time. More... | |
void | forEachSnapshotBeforeOrAt (const Time &time, FunctionT &&func) const |
Return all snapshots before or at time. More... | |
bool | forEachSnapshotIn (const MemoryID &id, SnapshotFunctionT &&func) |
bool | forEachSnapshotIn (const MemoryID &id, SnapshotFunctionT &&func) const |
void | forEachSnapshotInIndexRange (long first, long last, FunctionT &&func) const |
Return all snapshots from first to last index. More... | |
void | forEachSnapshotInTimeRange (const Time &min, const Time &max, FunctionT &&func) const |
Return all snapshots between, including, min and max. More... | |
EntitySnapshotT & | getFirstSnapshot () |
Return the snapshot with the least recent timestamp. More... | |
const EntitySnapshotT & | getFirstSnapshot () const |
Time | getFirstTimestamp () const |
Get the oldest timestamp. More... | |
std::string | getKeyString () const |
EntitySnapshotT & | getLatestSnapshot () |
Return the snapshot with the most recent timestamp. More... | |
const EntitySnapshotT & | getLatestSnapshot () const |
Time | getLatestTimestamp () const |
Get the latest timestamp. More... | |
EntitySnapshotT & | getSnapshot (const MemoryID &snapshotID) |
const EntitySnapshotT & | getSnapshot (const MemoryID &snapshotID) const |
EntitySnapshotT & | getSnapshot (const Time &time) |
Get a snapshot. More... | |
const EntitySnapshotT & | getSnapshot (const Time &time) const |
std::vector< Time > | getTimestamps () const |
Get all timestamps in the history. More... | |
bool | hasSnapshot (const MemoryID &snapshotID) const |
bool | hasSnapshot (const Time &time) const |
Indicates whether a history entry for the given time exists. More... | |
std::string & | name () |
const std::string & | name () const |
EntityBase & | operator= (const EntityBase &other)=default |
EntityBase & | operator= (EntityBase &&other)=default |
UpdateResult | update (const EntityUpdate &update) |
Add the given update to this entity's history. More... | |
![]() | |
ContainerT::iterator | begin () |
ContainerT::const_iterator | begin () const |
void | clear () |
bool | empty () const |
ContainerT::iterator | end () |
ContainerT::const_iterator | end () const |
bool | forEachChild (ChildFunctionT &&func) |
bool | forEachChild (ChildFunctionT &&func) const |
MemoryContainerBase () | |
MemoryContainerBase (const MemoryContainerBase &other)=default | |
MemoryContainerBase (const MemoryID &id) | |
MemoryContainerBase (MemoryContainerBase &&other)=default | |
MemoryContainerBase & | operator= (const MemoryContainerBase &other)=default |
MemoryContainerBase & | operator= (MemoryContainerBase &&other)=default |
std::size_t | size () const |
![]() | |
MemoryID & | id () |
const MemoryID & | id () const |
MemoryItem () | |
MemoryItem (const MemoryID &id) | |
MemoryItem (const MemoryItem &other)=default | |
MemoryItem (MemoryItem &&other)=default | |
MemoryItem & | operator= (const MemoryItem &other)=default |
MemoryItem & | operator= (MemoryItem &&other)=default |
![]() | |
bool | forEachInstance (InstanceFunctionT &&func) |
bool | forEachInstance (InstanceFunctionT &&func) const |
bool | forEachInstanceAs (AronDtoFunctionT &&func) const |
Call func on the data of each instances converted to Aron DTO class. More... | |
![]() | |
auto * | findInstance (const MemoryID &instanceID) |
Find an entity instance. More... | |
const auto * | findInstance (const MemoryID &instanceID) const |
auto & | getInstance (const MemoryID &instanceID) |
Retrieve an entity instance. More... | |
const auto & | getInstance (const MemoryID &instanceID) const |
bool | hasInstance (const MemoryID &instanceID) const |
![]() | |
long | getMaxHistorySize () const |
void | setMaxHistorySize (long maxSize) |
Set the maximum number of snapshots to be contained in an entity. More... | |
![]() | |
aron::data::DictPtr | findLatestInstanceData (int instanceIndex=0) const |
std::optional< AronDtoT > | findLatestInstanceDataAs (int instanceIndex=0) const |
Protected Member Functions | |
std::vector< EntitySnapshotT > | truncate () |
If maximum size is set, ensure history 's is not higher. More... | |
![]() | |
ChildT & | _addChild (const KeyT &key, ChildArgs... childArgs) |
void | _checkContainerName (const std::string &gottenName, const std::string &actualName, bool emptyOk=true) const |
DerivedT & | _derived () |
const DerivedT & | _derived () const |
ContainerT & | container () |
const ContainerT & | container () const |
![]() | |
~MemoryItem () | |
Additional Inherited Members | |
![]() | |
using | ChildT = EntitySnapshotT |
using | EntityInstanceT = typename EntitySnapshotT::EntityInstanceT |
using | EntitySnapshotT = EntitySnapshot |
![]() | |
using | ContainerT = std::map< Time, EntitySnapshot > |
using | DerivedT = Entity |
![]() | |
static std::string | getLevelName () |
![]() | |
ContainerT | _container |
![]() | |
MemoryID | _id |
![]() | |
long | _maxHistorySize = -1 |
Maximum size of entity histories. More... | |
Definition at line 30 of file memory_definitions.h.
void setMaxHistorySize | ( | long | maxSize | ) |
Sets the maximum history size.
The current history is truncated if necessary.
Definition at line 17 of file memory_definitions.cpp.
|
protected |
If maximum size is set, ensure history
's is not higher.
Definition at line 32 of file memory_definitions.cpp.
auto update | ( | const EntityUpdate & | update | ) |
Definition at line 24 of file memory_definitions.cpp.