Go to the documentation of this file.
16 #include <boost/io/ios_state.hpp>
20 static std::string _sDataObjectCppNotRegistered(
"NotRegistered" );
37 : m_version{
std::move( rhs.m_version ) }, m_pLinkMgr{
std::move( rhs.m_pLinkMgr ) } {}
58 if ( 0 == cnt )
delete this;
78 boost::io::ios_flags_saver _{
s };
79 return s <<
"DataObject at " <<
std::hex <<
this;
94 c.push_back( pobjAddr );
95 s_currObj = pobjAddr ? pobjAddr : &s_objPtr;
101 s_currObj =
c.back();
104 s_currObj = &s_objPtr;
const std::string & name() const
Retreive DataObject name. It is the name when registered in the store.
unsigned long m_refCount
Reference count.
std::unique_ptr< LinkManager > m_pLinkMgr
Store of symbolic links.
virtual unsigned long release()
release reference to object
unsigned char m_version
Version number.
GAUDI_API void popCurrentDataObject()
virtual ~DataObject()
Standard Destructor.
IRegistry * m_pRegistry
Pointer to the Registry Object.
DataObject & operator=(const DataObject &rhs)
Assignment Operator.
GAUDI_API DataObject * getCurrentDataObject()
virtual const name_type & name() const =0
Name of the directory (or key)
virtual StatusCode update()
Provide empty placeholder for internal object reconfiguration callback.
unsigned int CLID
Class ID definition.
GAUDI_API void pushCurrentDataObject(DataObject **pobjAddr)
constexpr static const auto SUCCESS
DataObject()
Standard Constructor.
static const CLID & classID()
Retrieve reference to class definition structure (static access)
virtual const CLID & clID() const
Retrieve reference to class definition structure.
virtual unsigned long addRef()
Add reference to object.
virtual std::ostream & fillStream(std::ostream &s) const
Fill the output stream (ASCII)