Base class for holding SharedObject data.
More...
#include <sharedObject.h>
|
| const std::string & | getName () |
| | Get the name of the SharedObject for this data.
|
| |
| bool | isFullyPublished () |
| | Checks to see if all instances of this SharedObject have called publish().
|
| |
| virtual int | getShareCount () |
| | Get the number of sharers for this data.
|
| |
| virtual int | getPublishCount () |
| | Get the number of instances that have called publish() on their instance of the shared object.
|
| |
|
virtual const char * | cls_name () const =0 |
| |
|
virtual uint32_t | cls_id () const =0 |
| |
|
virtual std::string | serialization_name () const =0 |
| |
|
|
std::string | name |
| |
|
int | share_count |
| |
|
int | publish_count |
| |
|
bool | fully_published |
| |
|
bool | locked |
| |
|
std::mutex | mtx |
| |
|
|
class | SharedObjectDataManager |
| |
|
class | SharedObject |
| |
|
|
static constexpr uint32_t | NullClsId = std::numeric_limits<uint32_t>::max() |
| |
|
static constexpr uint32_t | NullClsId = std::numeric_limits<uint32_t>::max() |
| |
| enum | cxn_flag_t { ConstructorFlag
} |
| |
|
static void | serializable_abort (uint32_t line, const char *file, const char *func, const char *obj) |
| |
Base class for holding SharedObject data.
The base class is needed so that we can have an API to manage unknown types of objects.
◆ SharedObjectData()
| SST::Shared::SharedObjectData::SharedObjectData |
( |
const std::string & | name | ) |
|
|
inlineexplicitprotected |
◆ getChangeSet()
◆ getName()
| const std::string & SST::Shared::SharedObjectData::getName |
( |
| ) |
|
|
inline |
Get the name of the SharedObject for this data.
- Returns
- name of data
◆ getPublishCount()
| virtual int SST::Shared::SharedObjectData::getPublishCount |
( |
| ) |
|
|
inlinevirtual |
Get the number of instances that have called publish() on their instance of the shared object.
- Returns
- number of instances that have called publish()
◆ getShareCount()
| virtual int SST::Shared::SharedObjectData::getShareCount |
( |
| ) |
|
|
inlinevirtual |
Get the number of sharers for this data.
- Returns
- number of sharers
◆ incPublishCount()
| virtual void SST::Shared::SharedObjectData::incPublishCount |
( |
| ) |
|
|
inlineprotectedvirtual |
Increment the count of instances that have called publish.
This should only be called once per instance.
References lock().
◆ incShareCount()
| virtual int SST::Shared::SharedObjectData::incShareCount |
( |
| ) |
|
|
inlineprotectedvirtual |
Increment the count of sharers.
This should only be called once per instance.
References lock().
◆ isFullyPublished()
| bool SST::Shared::SharedObjectData::isFullyPublished |
( |
| ) |
|
|
inline |
Checks to see if all instances of this SharedObject have called publish().
This is forced to true before the setup() phase of simulation, as no more writes are allowed.
- Returns
- true if all instances have called publish(), false otherwise.
◆ resetChangeSet()
| virtual void SST::Shared::SharedObjectData::resetChangeSet |
( |
| ) |
|
|
protectedpure virtual |
◆ serialize_order()
|
|
inlineoverrideprotectedvirtual |
The documentation for this class was generated from the following file: