Go to the documentation of this file.
53 std::vector<EntitySnapshotT>
truncate();
71 using ProviderSegmentBase::addEntity;
73 template <
class ...Args>
76 Entity& added = ProviderSegmentBase::addEntity(
name, args...);
99 using CoreSegmentBase::addProviderSegment;
100 template <
class ...Args>
111 template <
class FunctionT>
114 std::scoped_lock lock(_mutex);
121 mutable std::mutex _mutex;
Data of a provider segment containing multiple entities.
armem::wm::EntityInstance EntityInstance
A bundle of updates to be sent to the memory.
Can do predictions itself and has children it could delegate predictions to.
std::vector< EntitySnapshotT > truncate()
If maximum size is set, ensure history's is not higher.
An entity over a period of time.
Data of a core segment containing multiple provider segments.
ProviderSegment ProviderSegmentT
long getMaxHistorySize() const
std::vector< UpdateResult > update(const Commit &commit)
Store all updates in commit.
An update of an entity for a specific point in time.
Entity & addEntity(const std::string &name, Args... args)
Data of a memory consisting of multiple core segments.
auto doLocked(FunctionT &&function) const
std::shared_ptr< Dict > DictPtr
armem::wm::EntitySnapshot EntitySnapshot
void setMaxHistorySize(long maxSize)
Sets the maximum history size.
Can do predictions, but has no children it could delegate predictions to.
base::EntityInstanceMetadata EntityInstanceMetadata
ProviderSegment & addProviderSegment(const std::string &name, Args... args)
std::vector< Base::UpdateResult > updateLocking(const Commit &commit)
Perform the commit, locking the core segments.
armarx::aron::data::DictPtr EntityInstanceDataPtr
UpdateResult update(const EntityUpdate &update)