15 template <
class _EntityT>
54 _store(provSeg, simulatedVersion);
85 std::shared_ptr<EntityT>
101 return "LT-ProviderSegment";
114 virtual std::shared_ptr<EntityT>
_implFindEntity(
const std::string& entityName)
const = 0;
MemoryItem(const std::string &exportName, const MemoryID &)
Interface functions for the longterm memory classes.
virtual bool _implHasEntity(const std::string &entityName) const =0
virtual void _resolve(armem::wm::ProviderSegment &)=0
void loadLatestNReferences(int n, armem::wm::ProviderSegment &provSeg)
virtual void _store(const armem::wm::ProviderSegment &p, bool simulatedVersion=false)=0
virtual std::shared_ptr< EntityT > _implFindEntity(const std::string &entityName) const =0
virtual bool _implForEachEntity(std::function< void(EntityT &)> func) const =0
bool hasEntity(const std::string &entityName) const
check if entity segment exists
void resetStatistics()
statistics
void store(const armem::wm::ProviderSegment &provSeg, bool simulatedVersion)
encode the content of a wm::Memory and store
static std::string getLevelName()
aron::type::ObjectPtr aronType() const
get aron type
void loadAllReferences(armem::wm::ProviderSegment &provSeg)
return the full sub-ltm as a wm::ProviderSegment with only references the ltm may be huge,...
std::shared_ptr< EntityT > findEntity(const std::string &entityName) const
find entity segment
virtual void _loadLatestNReferences(int n, armem::wm::ProviderSegment &p)=0
virtual void _loadAllReferences(armem::wm::ProviderSegment &)=0
bool forEachEntity(std::function< void(EntityT &)> func) const
iterate over all core segments of this ltm
Statistics getStatistics() const
void resolve(armem::wm::ProviderSegment &provSeg)
convert the references of the input into a wm::Memory
MemoryItem(const std::string &exportName, const MemoryID &)
Client-side working memory provider segment.
std::shared_ptr< Object > ObjectPtr