ATLAS Offline Software
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
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. More...
 
int m_ioStoreOffset
 AuxStoreIO interface offset in the subclass type (for casting). negative means no inheritance. More...
 

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  { }

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:
TrigInDetValidation_menu_test.tc
tc
Definition: TrigInDetValidation_menu_test.py:8
SG::IAuxStoreIO
Interface providing I/O for a generic auxiliary store.
Definition: IAuxStoreIO.h:44
RootAuxDynIO::AuxDynAttrAccess::m_holderType
TClass & m_holderType
TClass of the type containing the AuxStore with attributes.
Definition: RootAuxDynIO.h:30
RootAuxDynIO::AuxDynAttrAccess::auxStoreOffset
int auxStoreOffset(TClass &tc)
Definition: RootAuxDynIO.cxx:29
RootAuxDynIO::AuxDynAttrAccess::m_ioStoreOffset
int m_ioStoreOffset
AuxStoreIO interface offset in the subclass type (for casting). negative means no inheritance.
Definition: RootAuxDynIO.h:32
RootAuxDynIO::AuxDynAttrAccess::hasAuxDynStore
bool hasAuxDynStore() const
Definition: RootAuxDynIO.cxx:40