12#ifndef SST_CORE_SERIALIZATION_OBJECTMAPDEFERRED_H 
   13#define SST_CORE_SERIALIZATION_OBJECTMAPDEFERRED_H 
   15#include "sst/core/serialization/serializer.h" 
   20namespace SST::Core::Serialization {
 
   36    std::string 
getType()
 override { 
return type_; }
 
   44    void* 
getAddr()
 override { 
return static_cast<void*
>(addr_); }
 
   54    const std::multimap<std::string, ObjectMap*>& 
getVariables()
 override { 
return obj_->getVariables(); }
 
   69        if ( name == 
"!proxy!" ) {
 
   73            printf(
"WARNING:: ObjectMapDeferred not built properly.  No mapping will be available\n");
 
 
   89        if ( obj_ != 
nullptr ) 
return;
 
   92        ser.enable_pointer_tracking();
 
   93        ser.start_mapping(
this);
 
   95        sst_ser_object(ser, addr_, SerOption::none, 
"!proxy!");
 
 
  121    std::string type_ = 
"";
 
 
ObjectMap version that will delay building the internal data structures until the object is "selected...
Definition objectMapDeferred.h:29
 
void * getAddr() override
Returns nullptr since there is no underlying object being represented.
Definition objectMapDeferred.h:44
 
std::string getType() override
Returns type of the deferred object.
Definition objectMapDeferred.h:36
 
void deactivate_callback() override
Function that will get called when this object is deactivated (i.e selectParent() is called)
Definition objectMapDeferred.h:98
 
const std::multimap< std::string, ObjectMap * > & getVariables() override
Get the list of child variables contained in this ObjectMap.
Definition objectMapDeferred.h:54
 
void activate_callback() override
Function that will get called when this object is selected.
Definition objectMapDeferred.h:86
 
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:63
 
Base class for objects created by the serializer mapping mode used to map the variables for objects.
Definition objectMap.h:112
 
ObjectMap()=default
Default constructor primarily used for the "top" object in the hierarchy.
 
static std::string demangle_name(const char *name)
Static function to demangle type names returned from typeid(T).name()
Definition objectMap.cc:137
 
This class is basically a wrapper for objects to declare the order in which their members should be s...
Definition serializer.h:45