ProviderSegmentBase< _EntityT > Class Template Referenceabstract

Interface functions for the longterm memory classes. More...

#include <RobotAPI/libraries/armem/server/ltm/detail/ProviderSegmentBase.h>

+ Inheritance diagram for ProviderSegmentBase< _EntityT >:

Classes

struct  Statistics
 

Public Types

using EntityT = _EntityT
 

Public Member Functions

aron::type::ObjectPtr aronType () const
 get aron type
 
std::shared_ptr< EntityTfindEntity (const std::string &entityName) const
 find entity segment
 
bool forEachEntity (std::function< void(EntityT &)> func) const
 iterate over all core segments of this ltm
 
Statistics getStatistics () const
 
bool hasEntity (const std::string &entityName) const
 check if entity segment exists
 
void loadAllReferences (armem::wm::ProviderSegment &provSeg)
 return the full sub-ltm as a wm::ProviderSegment with only references the ltm may be huge, use with caution
 
void loadLatestNReferences (int n, armem::wm::ProviderSegment &provSeg)
 
 MemoryItem (const std::string &exportName, const MemoryID &)
 
 MemoryItem (const std::string &exportName, const MemoryID &, const std::shared_ptr< Processors > &)
 
void resetStatistics ()
 statistics
 
void resolve (armem::wm::ProviderSegment &provSeg)
 convert the references of the input into a wm::Memory
 
void store (const armem::wm::ProviderSegment &provSeg, bool simulatedVersion)
 encode the content of a wm::Memory and store
 
- Public Member Functions inherited from MemoryItem
virtual std::string getExportName () const
 
MemoryID getMemoryID () const
 
MemoryID id () const
 
 MemoryItem (const std::string &exportName, const MemoryID &)
 
 MemoryItem (const std::string &exportName, const MemoryID &, const std::shared_ptr< Processors > &)
 
std::string name () const
 
void setExportName (const std::string &n)
 
void setMemoryID (const MemoryID &)
 
void setMemoryName (const std::string &memoryName)
 
virtual ~MemoryItem ()=default
 

Static Public Member Functions

static std::string getLevelName ()
 

Protected Member Functions

virtual std::shared_ptr< EntityT_implFindEntity (const std::string &entityName) const =0
 
virtual bool _implForEachEntity (std::function< void(EntityT &)> func) const =0
 
virtual bool _implHasEntity (const std::string &entityName) const =0
 
virtual void _loadAllReferences (armem::wm::ProviderSegment &)=0
 
virtual void _loadLatestNReferences (int n, armem::wm::ProviderSegment &p)=0
 
virtual void _resolve (armem::wm::ProviderSegment &)=0
 
virtual void _store (const armem::wm::ProviderSegment &p, bool simulatedVersion=false)=0
 
- Protected Member Functions inherited from MemoryItem
virtual void _setExportName (const std::string &)
 
virtual void _setMemoryID (const MemoryID &)
 

Protected Attributes

Statistics statistics
 
- Protected Attributes inherited from MemoryItem
std::shared_ptr< Processorsprocessors
 

Detailed Description

template<class _EntityT>
class armarx::armem::server::ltm::detail::ProviderSegmentBase< _EntityT >

Interface functions for the longterm memory classes.

Definition at line 16 of file ProviderSegmentBase.h.

Member Typedef Documentation

◆ EntityT

template<class _EntityT>
using EntityT = _EntityT

Definition at line 25 of file ProviderSegmentBase.h.

Member Function Documentation

◆ _implFindEntity()

template<class _EntityT>
virtual std::shared_ptr< EntityT > _implFindEntity ( const std::string & entityName) const
protectedpure virtual

Implemented in ProviderSegment.

+ Here is the caller graph for this function:

◆ _implForEachEntity()

template<class _EntityT>
virtual bool _implForEachEntity ( std::function< void(EntityT &)> func) const
protectedpure virtual

Implemented in ProviderSegment.

+ Here is the caller graph for this function:

◆ _implHasEntity()

template<class _EntityT>
virtual bool _implHasEntity ( const std::string & entityName) const
protectedpure virtual

Implemented in ProviderSegment.

+ Here is the caller graph for this function:

◆ _loadAllReferences()

template<class _EntityT>
virtual void _loadAllReferences ( armem::wm::ProviderSegment & )
protectedpure virtual

Implemented in ProviderSegment.

+ Here is the caller graph for this function:

◆ _loadLatestNReferences()

template<class _EntityT>
virtual void _loadLatestNReferences ( int n,
armem::wm::ProviderSegment & p )
protectedpure virtual

Implemented in ProviderSegment.

+ Here is the caller graph for this function:

◆ _resolve()

template<class _EntityT>
virtual void _resolve ( armem::wm::ProviderSegment & )
protectedpure virtual

Implemented in ProviderSegment.

+ Here is the caller graph for this function:

◆ _store()

template<class _EntityT>
virtual void _store ( const armem::wm::ProviderSegment & p,
bool simulatedVersion = false )
protectedpure virtual

Implemented in ProviderSegment.

+ Here is the caller graph for this function:

◆ aronType()

template<class _EntityT>
aron::type::ObjectPtr aronType ( ) const
inline

get aron type

Definition at line 93 of file ProviderSegmentBase.h.

◆ findEntity()

template<class _EntityT>
std::shared_ptr< EntityT > findEntity ( const std::string & entityName) const
inline

find entity segment

Definition at line 86 of file ProviderSegmentBase.h.

+ Here is the call graph for this function:

◆ forEachEntity()

template<class _EntityT>
bool forEachEntity ( std::function< void(EntityT &)> func) const
inline

iterate over all core segments of this ltm

Definition at line 72 of file ProviderSegmentBase.h.

+ Here is the call graph for this function:

◆ getLevelName()

template<class _EntityT>
static std::string getLevelName ( )
inlinestatic

Definition at line 99 of file ProviderSegmentBase.h.

◆ getStatistics()

template<class _EntityT>
Statistics getStatistics ( ) const
inline

Definition at line 65 of file ProviderSegmentBase.h.

◆ hasEntity()

template<class _EntityT>
bool hasEntity ( const std::string & entityName) const
inline

check if entity segment exists

Definition at line 79 of file ProviderSegmentBase.h.

+ Here is the call graph for this function:

◆ loadAllReferences()

template<class _EntityT>
void loadAllReferences ( armem::wm::ProviderSegment & provSeg)
inline

return the full sub-ltm as a wm::ProviderSegment with only references the ltm may be huge, use with caution

Definition at line 32 of file ProviderSegmentBase.h.

+ Here is the call graph for this function:

◆ loadLatestNReferences()

template<class _EntityT>
void loadLatestNReferences ( int n,
armem::wm::ProviderSegment & provSeg )
inline

Definition at line 38 of file ProviderSegmentBase.h.

+ Here is the call graph for this function:

◆ MemoryItem() [1/2]

template<class _EntityT>
MemoryItem ( const std::string & exportName,
const MemoryID & id )

Definition at line 16 of file MemoryItem.cpp.

◆ MemoryItem() [2/2]

template<class _EntityT>
MemoryItem ( const std::string & exportName,
const MemoryID & id,
const std::shared_ptr< Processors > & p )

Definition at line 17 of file MemoryItem.cpp.

◆ resetStatistics()

template<class _EntityT>
void resetStatistics ( )
inline

statistics

Definition at line 59 of file ProviderSegmentBase.h.

◆ resolve()

template<class _EntityT>
void resolve ( armem::wm::ProviderSegment & provSeg)
inline

convert the references of the input into a wm::Memory

Definition at line 45 of file ProviderSegmentBase.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ store()

template<class _EntityT>
void store ( const armem::wm::ProviderSegment & provSeg,
bool simulatedVersion )
inline

encode the content of a wm::Memory and store

Definition at line 52 of file ProviderSegmentBase.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ statistics

template<class _EntityT>
Statistics statistics
protected

Definition at line 117 of file ProviderSegmentBase.h.


The documentation for this class was generated from the following file: