ATLAS Offline Software
|
#include <RootDataBucketBranch.h>
Public Member Functions | |
DataBucketBranch (CLID clid, const std::string &type_name, void *ptr=NULL) | |
DataBucketBranch (CLID clid, const std::type_info &ti, void *ptr=NULL) | |
DataBucketBranch (CLID clid, const RootType &type, void *ptr) | |
virtual | ~DataBucketBranch () override |
virtual void * | object () override |
virtual void * | cast (CLID clid, SG::IRegisterTransient *itr, bool isConst=true) override |
Return the contents of the DataBucket , converted to type given by clid. More... | |
virtual void * | cast (const std::type_info &tinfo, SG::IRegisterTransient *itr, bool isConst=true) override |
Return the contents of the DataBucket , converted to type given by std::type_info. More... | |
virtual void | relinquish () override |
Give up ownership of the DataBucket contents. More... | |
virtual void | lock () override |
If the held object derives from ILockable , call lock() on it. More... | |
virtual const CLID & | clID () const override |
virtual const std::type_info & | tinfo () const override |
Return the type_info for the stored object. More... | |
template<class T > | |
T * | cast (SG::IRegisterTransient *irt=0, bool isConst=true) |
Return the contents of the DataBucket , converted to type T. More... | |
virtual void * | cast (CLID clid, SG::IRegisterTransient *irt=0, bool isConst=true)=0 |
Return the contents of the DataBucket , converted to type given by clid. More... | |
virtual void * | cast (const std::type_info &tinfo, SG::IRegisterTransient *irt=0, bool isConst=true)=0 |
Return the contents of the DataBucket , converted to type given by std::type_info. More... | |
virtual void * | cast (CLID clid, const std::type_info &tinfo, SG::IRegisterTransient *irt=0, bool isConst=true) |
Return the contents of the DataBucket , converted to type given by clid. More... | |
template<class T > | |
T * | cast (SG::IRegisterTransient *irt=0, bool isConst=true) |
Return the contents of the DataBucket , converted to type T. More... | |
virtual void * | cast (CLID clid, const std::type_info &tinfo, SG::IRegisterTransient *irt=0, bool isConst=true) |
Return the contents of the DataBucket , converted to type given by clid. More... | |
Public Attributes | |
CLID | m_clid |
RootType | m_type |
void * | m_ptr |
bool | allowMismatchCLID =false |
Definition at line 24 of file RootDataBucketBranch.h.
|
overridevirtual |
Definition at line 21 of file RootDataBucketBranch.cxx.
virtual void* DataBucketBase::cast |
Return the contents of the DataBucket
, converted to type given by clid.
Note that only derived->base conversions are allowed here.
clid | The class ID to which to convert. |
tinfo | The std::type_info of the type to which to convert. |
irt | To be called if we make a new instance. |
isConst | True if the object being converted is regarded as const. |
This allows the callee to choose whether to use clid or tinfo. By default, this uses type_info.
|
virtualinherited |
Return the contents of the DataBucket
, converted to type given by clid.
Note that only derived->base conversions are allowed here.
clid | The class ID to which to convert. |
tinfo | The std::type_info of the type to which to convert. |
irt | To be called if we make a new instance. |
isConst | True if the object being converted is regarded as const. |
This allows the callee to choose whether to use clid or tinfo. By default, this uses type_info.
Reimplemented in xAODPrivate::THolderBucket, SG::DVLDataBucket< T >, SG::DVLDataBucket< DV >, SG::DataBucket< T >, SG::DataBucket< DV >, and SG::MetaContDataBucket< T >.
virtual void* DataBucketBase::cast |
Return the contents of the DataBucket
, converted to type given by clid.
Note that only derived->base conversions are allowed here.
clid | The class ID to which to convert. |
irt | To be called if we make a new instance. |
isConst | True if the object being converted is regarded as const. |
|
overridevirtual |
Return the contents of the DataBucket
, converted to type given by clid.
Note that only derived->base conversions are allowed here.
clid | The class ID to which to convert. |
irt | To be called if we make a new instance. |
isConst | True if the object being converted is regarded as const. |
Implements DataBucketBase.
Definition at line 27 of file RootDataBucketBranch.cxx.
virtual void* DataBucketBase::cast |
Return the contents of the DataBucket
, converted to type given by std::type_info.
Note that only derived->base conversions are allowed here.
tinfo | The std::type_info of the type to which to convert. |
irt | To be called if we make a new instance. |
isConst | True if the object being converted is regarded as const. |
|
overridevirtual |
Return the contents of the DataBucket
, converted to type given by std::type_info.
Note that only derived->base conversions are allowed here.
tinfo | The std::type_info of the type to which to convert. |
irt | To be called if we make a new instance. |
isConst | True if the object being converted is regarded as const. |
Implements DataBucketBase.
Definition at line 47 of file RootDataBucketBranch.cxx.
|
inherited |
Return the contents of the DataBucket
, converted to type T.
Note that only derived->base conversions are allowed here. T must have a valid Class ID for this to work.
irt | To be called if we make a new instance. |
isConst | True if the object being converted is regarded as const. |
T* DataBucketBase::cast | ( | class T | ) |
Return the contents of the DataBucket
, converted to type T.
Note that only derived->base conversions are allowed here. T must have a valid Class ID for this to work.
irt | To be called if we make a new instance. |
isConst | True if the object being converted is regarded as const. |
Definition at line 71 of file RootDataBucketBranch.h.
|
inlineoverridevirtual |
If the held object derives from ILockable
, call lock()
on it.
Implements DataBucketBase.
Definition at line 101 of file RootDataBucketBranch.h.
|
inlineoverridevirtual |
Implements DataBucketBase.
Definition at line 89 of file RootDataBucketBranch.h.
|
inlineoverridevirtual |
Give up ownership of the DataBucket
contents.
This leaks the contents and it is useful mainly for error handling.
Implements DataBucketBase.
Definition at line 96 of file RootDataBucketBranch.h.
|
inlineoverridevirtual |
Return the type_info
for the stored object.
Implements DataBucketBase.
Definition at line 73 of file RootDataBucketBranch.h.
bool Athena::DataBucketBranch::allowMismatchCLID =false |
Definition at line 83 of file RootDataBucketBranch.h.
CLID Athena::DataBucketBranch::m_clid |
Definition at line 79 of file RootDataBucketBranch.h.
void* Athena::DataBucketBranch::m_ptr |
Definition at line 81 of file RootDataBucketBranch.h.
RootType Athena::DataBucketBranch::m_type |
Definition at line 80 of file RootDataBucketBranch.h.