SST  14.1.0
StructuralSimulationToolkit
SST::Core::Serialization::ObjectMapWithChildren Class Reference

ObjectMap object for non-fundamental, non-container types. More...

#include <objectMap.h>

Inheritance diagram for SST::Core::Serialization::ObjectMapWithChildren:
SST::Core::Serialization::ObjectMap SST::Core::Serialization::ObjectMapClass SST::Core::Serialization::ObjectMapHierarchyOnly SST::Core::Serialization::ObjectMapVector< T >

Public Member Functions

void addVariable (const std::string &name, ObjectMap *obj) override
 Adds a variable to this ObjectMap. More...
 
const std::vector< std::pair< std::string, ObjectMap * > > & getVariables () override
 Get the list of child variables contained in this ObjectMap. More...
 
- Public Member Functions inherited from SST::Core::Serialization::ObjectMap
 ObjectMap ()
 Default constructor primarily used for the "top" object in the hierarchy.
 
bool isReadOnly ()
 
void setReadOnly ()
 
std::string getName ()
 Get the name of the variable represented by this ObjectMap. More...
 
std::string getFullName ()
 Get the full hierarchical name of the variable represented by this ObjectMap, based on the path taken to get to this object. More...
 
virtual std::string getType ()=0
 Get the type of the variable represented by the ObjectMap. More...
 
virtual void * getAddr ()=0
 Get the address of the variable represented by the ObjectMap. More...
 
void incRefCount ()
 Increament the reference counter for this object map.
 
void decRefCount ()
 Decreament the reference counter for this object map. More...
 
int32_t getRefCount ()
 Get the current reference count. More...
 
ObjectMapselectParent ()
 Get the parent for this ObjectMap. More...
 
ObjectMapselectVariable (std::string name, bool &loop_detected)
 Get the ObjectMap for the specified variable. More...
 
virtual void addVariable (const std::string &UNUSED(name), ObjectMap *UNUSED(obj))
 Adds a varaible to this ObjectMap. More...
 
virtual std::string get ()
 Get the value of the variable as a string. More...
 
void set (const std::string &value)
 Sets the value of the variable represented by the ObjectMap to the specified value, which is represented as a string. More...
 
virtual std::string get (const std::string &var)
 Gets the value of the specified variable as a string. More...
 
virtual void set (const std::string &var, const std::string &value, bool &found, bool &read_only)
 Sets the value of the specified variable to the specified value, which is represented as a string. More...
 
virtual bool isFundamental ()
 Check to see if this ObjectMap represents a fundamental or a class treated as a fundamental. More...
 
virtual bool isContainer ()
 Check to see if this ObjectMap represents a container. More...
 
virtual ~ObjectMap ()
 Destructor.
 
virtual std::string listVariable (std::string name, bool &found, int recurse=0)
 Create a string that lists information for the specified variable. More...
 
virtual std::string list (int recurse=0)
 Create a string that lists information for the current object. More...
 

Protected Attributes

std::vector< std::pair< std::string, ObjectMap * > > variables_
 Vector that child ObjectMaps are stored in.
 
- Protected Attributes inherited from SST::Core::Serialization::ObjectMap
ObjectMapMetaDatamdata_ = nullptr
 Metedata object for walking the object hierarchy. More...
 
bool read_only_ = false
 Indicates wheter or not the variable is read-only.
 

Additional Inherited Members

- Static Public Member Functions inherited from SST::Core::Serialization::ObjectMap
static std::string demangle_name (const char *name)
 Static function to demangle type names returned from typeid<T>.name() More...
 
- Protected Member Functions inherited from SST::Core::Serialization::ObjectMap
virtual void set_impl (const std::string &UNUSED(value))
 Function implemented by derived classes to implement set(). More...
 
virtual void activate_callback ()
 Function that will get called when this object is selected.
 
virtual void deactivate_callback ()
 
- Static Protected Attributes inherited from SST::Core::Serialization::ObjectMap
static std::vector< std::pair< std::string, ObjectMap * > > emptyVars
 Static empty variable vector for use by versions that don't have variables (i.e. More...
 

Detailed Description

ObjectMap object for non-fundamental, non-container types.

This class allows for child variables.

Member Function Documentation

◆ addVariable()

void SST::Core::Serialization::ObjectMapWithChildren::addVariable ( const std::string &  name,
ObjectMap obj 
)
inlineoverride

Adds a variable to this ObjectMap.

Parameters
objObjectMap to add as a variable

References variables_.

◆ getVariables()

const std::vector<std::pair<std::string, ObjectMap*> >& SST::Core::Serialization::ObjectMapWithChildren::getVariables ( )
inlineoverridevirtual

Get the list of child variables contained in this ObjectMap.

Returns
Refernce to vector containing ObjectMaps for this ObjectMap's child variables. pair.first is the name of the variable in the context of this object.

Reimplemented from SST::Core::Serialization::ObjectMap.

References variables_.


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