ATLAS Offline Software
Loading...
Searching...
No Matches
RootAuxDynIO::AuxDynAttrAccess Class Reference

#include <RootAuxDynIO.h>

Inheritance diagram for RootAuxDynIO::AuxDynAttrAccess:
Collaboration diagram for RootAuxDynIO::AuxDynAttrAccess:

Public Member Functions

 AuxDynAttrAccess (TClass &tc)
bool hasAuxDynStore () const

Protected Member Functions

int auxStoreOffset (TClass &tc)
SG::IAuxStoreIOcastIOStore (void *object)

Protected Attributes

TClass & m_holderType
 TClass of the type containing the AuxStore with attributes.
int m_ioStoreOffset
 AuxStoreIO interface offset in the subclass type (for casting). negative means no inheritance.

Detailed Description

Definition at line 19 of file RootAuxDynIO.h.

Constructor & Destructor Documentation

◆ AuxDynAttrAccess()

RootAuxDynIO::AuxDynAttrAccess::AuxDynAttrAccess ( TClass & tc)

Definition at line 24 of file RootAuxDynIO.cxx.

25 : m_holderType( tc ),
27 { }
static Double_t tc
int m_ioStoreOffset
AuxStoreIO interface offset in the subclass type (for casting). negative means no inheritance.
TClass & m_holderType
TClass of the type containing the AuxStore with attributes.

Member Function Documentation

◆ auxStoreOffset()

int RootAuxDynIO::AuxDynAttrAccess::auxStoreOffset ( TClass & tc)
protected

Definition at line 29 of file RootAuxDynIO.cxx.

30 {
31 TClass *storeTClass = tc.GetBaseClass("SG::IAuxStoreIO");
32 if( storeTClass ) {
33 // This is a class implementing SG::IAuxStoreIO
34 // Find IAuxStoreIO interface offset
35 return tc.GetBaseClassOffset( storeTClass );
36 }
37 return -1;
38 }

◆ castIOStore()

SG::IAuxStoreIO * RootAuxDynIO::AuxDynAttrAccess::castIOStore ( void * object)
protected

Definition at line 45 of file RootAuxDynIO.cxx.

45 {
46 return ( hasAuxDynStore()?
47 reinterpret_cast<SG::IAuxStoreIO*>( (char*)object + m_ioStoreOffset )
48 : nullptr);
49 }

◆ hasAuxDynStore()

bool RootAuxDynIO::AuxDynAttrAccess::hasAuxDynStore ( ) const

Definition at line 40 of file RootAuxDynIO.cxx.

41 {
42 return m_ioStoreOffset >= 0;
43 }

Member Data Documentation

◆ m_holderType

TClass& RootAuxDynIO::AuxDynAttrAccess::m_holderType
protected

TClass of the type containing the AuxStore with attributes.

Definition at line 30 of file RootAuxDynIO.h.

◆ m_ioStoreOffset

int RootAuxDynIO::AuxDynAttrAccess::m_ioStoreOffset
protected

AuxStoreIO interface offset in the subclass type (for casting). negative means no inheritance.

Definition at line 32 of file RootAuxDynIO.h.


The documentation for this class was generated from the following files: