SST 15.0
Structural Simulation Toolkit
|
ObjectMap object for non-fundamental, non-container types. More...
#include <objectMap.h>
Public Member Functions | |
~ObjectMapWithChildren () override | |
Destructor. | |
ObjectMapWithChildren (const ObjectMapWithChildren &)=delete | |
Disallow copying and assignment. | |
ObjectMapWithChildren & | operator= (const ObjectMapWithChildren &)=delete |
void | addVariable (const std::string &name, ObjectMap *obj) override |
Adds a variable to this ObjectMap. | |
const std::multimap< std::string, ObjectMap * > & | getVariables () override |
Get the list of child variables contained in this ObjectMap. | |
![]() | |
ObjectMap ()=default | |
Default constructor primarily used for the "top" object in the hierarchy. | |
bool | isReadOnly () |
Check to see if this object is read-only. | |
void | setReadOnly (bool state=true) |
Set the read-only state of the object. | |
std::string | getName () |
Get the name of the variable represented by this ObjectMap. | |
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. | |
virtual std::string | getType ()=0 |
Get the type of the variable represented by the ObjectMap. | |
virtual void * | getAddr ()=0 |
Get the address of the variable represented by the ObjectMap. | |
void | incRefCount () |
Increment the reference counter for this ObjectMap. | |
void | decRefCount () |
Decrement the reference counter for this ObjectMap. | |
int32_t | getRefCount () |
Get the current reference count. | |
virtual ObjectMapComparison * | getComparison (const std::string &UNUSED(name), ObjectMapComparison::Op UNUSED(op), const std::string &UNUSED(value)) |
Get a watch point for this object. | |
ObjectMap * | selectParent () |
Get the parent for this ObjectMap. | |
ObjectMap * | selectVariable (std::string name, bool &loop_detected) |
Get the ObjectMap for the specified variable. | |
virtual void | addVariable (const std::string &UNUSED(name), ObjectMap *UNUSED(obj)) |
Adds a variable to this ObjectMap. | |
virtual std::string | get () |
Get the value of the variable as a string. | |
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. | |
virtual std::string | get (const std::string &var) |
Gets the value of the specified variable as a string. | |
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. | |
virtual bool | isFundamental () |
Check to see if this ObjectMap represents a fundamental or a class treated as a fundamental. | |
virtual bool | isContainer () |
Check to see if this ObjectMap represents a container. | |
virtual | ~ObjectMap ()=default |
Destructor. | |
ObjectMap (const ObjectMap &)=delete | |
Disallow copying and assignment. | |
ObjectMap & | operator= (const ObjectMap &)=delete |
virtual std::string | listVariable (std::string name, bool &found, int recurse=0) |
Create a string that lists information for the specified variable. | |
virtual std::string | list (int recurse=0) |
Create a string that lists information for the current object. | |
virtual ObjectMap * | findVariable (const std::string &name) |
Find a variable in this object map. | |
Protected Member Functions | |
ObjectMapWithChildren ()=default | |
Default constructor. | |
![]() | |
virtual void | set_impl (const std::string &UNUSED(value)) |
Function implemented by derived classes to implement set(). | |
virtual void | activate_callback () |
Function that will get called when this object is selected. | |
virtual void | deactivate_callback () |
Function that will get called when this object is deactivated (i.e selectParent() is called) | |
Protected Attributes | |
std::multimap< std::string, ObjectMap * > | variables_ |
Map that child ObjectMaps are stored in. | |
![]() | |
ObjectMapMetaData * | mdata_ = nullptr |
Metadata object for walking the object hierarchy. | |
bool | read_only_ = false |
Indicates whether or not the variable is read-only. | |
Additional Inherited Members | |
![]() | |
static std::string | demangle_name (const char *name) |
Static function to demangle type names returned from typeid(T).name() | |
![]() | |
static const std::multimap< std::string, ObjectMap * > | emptyVars |
Static empty variable map for use by versions that don't have variables (i.e. | |
ObjectMap object for non-fundamental, non-container types.
This class allows for child variables.
|
inlineoverride |
Destructor.
Should not be called directly (i.e. do not call delete on the object). Call decRefCount() when object is no longer needed. This will also call decRefCount() on all its children.
References variables_.
|
inlineoverride |
Adds a variable to this ObjectMap.
name | Name of the object in the context of this ObjectMap |
obj | ObjectMap to add as a variable |
References SST::Core::Serialization::ObjectMap::ObjectMap(), and variables_.
|
inlineoverridevirtual |
Get the list of child variables contained in this ObjectMap.
Reimplemented from SST::Core::Serialization::ObjectMap.
References variables_.