12 #ifndef SST_CORE_SERIALIZATION_OBJECTMAPDEFERRED_H 13 #define SST_CORE_SERIALIZATION_OBJECTMAPDEFERRED_H 15 #include "sst/core/serialization/serializer.h" 20 namespace Serialization {
37 std::string
getType()
override {
return type_; }
45 void*
getAddr()
override {
return static_cast<void*
>(addr_); }
70 if ( name ==
"!proxy!" ) { obj_ = obj; }
72 printf(
"WARNING:: ObjectMapDeferred no built properly. No mapping will be available\n");
81 if ( obj_ !=
nullptr )
delete obj_;
88 if ( obj_ !=
nullptr )
return;
91 ser.enable_pointer_tracking();
92 ser.start_mapping(
this);
94 sst_map_object(ser, addr_,
"!proxy!");
97 void deactivate_callback()
override 120 std::string type_ =
"";
128 #endif // SST_CORE_SERIALIZATION_OBJECTMAPDEFERRED_H This class is basically a wrapper for objects to declare the order in which their members should be s...
Definition: serializer.h:43
void activate_callback() override
Function that will get called when this object is selected.
Definition: objectMapDeferred.h:85
ObjectMap version that will delay building the internal data structures until the object is "selected...
Definition: objectMapDeferred.h:29
virtual const std::vector< std::pair< std::string, ObjectMap * > > & getVariables()
Get the list of child variables contained in this ObjectMap.
Definition: objectMap.h:161
Class created by the serializer mapping mode used to map the variables for objects.
Definition: objectMap.h:61
const std::vector< std::pair< std::string, ObjectMap * > > & getVariables() override
Get the list of child variables contained in this ObjectMap.
Definition: objectMapDeferred.h:55
std::string getType() override
Returns type of the deferred object.
Definition: objectMapDeferred.h:37
void addVariable(const std::string &name, ObjectMap *obj) override
For the Deferred Build, the only variable that gets added will be the "real" ObjectMap.
Definition: objectMapDeferred.h:64
void * getAddr() override
Returns nullptr since there is no underlying object being represented.
Definition: objectMapDeferred.h:45
static std::string demangle_name(const char *name)
Static function to demangle type names returned from typeid<T>.name()
Definition: objectMap.cc:139
void decRefCount()
Decreament the reference counter for this object map.
Definition: objectMap.h:175