ATLAS Offline Software
Public Member Functions | Protected Attributes | List of all members
AthenaRootConverterHandle Class Reference

#include <AthenaRootConverterHandle.h>

Collaboration diagram for AthenaRootConverterHandle:

Public Member Functions

 AthenaRootConverterHandle (T_AthenaRootConverterBase *converter)
 
virtual ~AthenaRootConverterHandle ()
 
virtual void ReadBuffer (TBuffer &b, void *obj, Version_t version, UInt_t R__s, UInt_t R__c)
 
const std::string & ClassName ()
 
unsigned StreamerChecksum ()
 

Protected Attributes

TClass * m_oldClass
 
void * m_oldObj
 
T_AthenaRootConverterBasem_converter
 

Detailed Description

Definition at line 21 of file AthenaRootConverterHandle.h.

Constructor & Destructor Documentation

◆ AthenaRootConverterHandle()

AthenaRootConverterHandle::AthenaRootConverterHandle ( T_AthenaRootConverterBase converter)

Definition at line 9 of file AthenaRootConverterHandle.cxx.

10  :
11  m_oldClass(0),
12  m_oldObj(0),
13  m_converter(converter)
14 {
15 }

◆ ~AthenaRootConverterHandle()

AthenaRootConverterHandle::~AthenaRootConverterHandle ( )
virtual

Definition at line 18 of file AthenaRootConverterHandle.cxx.

19 {
20  // not deleting the converter here - could be under user management
21 }

Member Function Documentation

◆ ClassName()

const std::string& AthenaRootConverterHandle::ClassName ( )
inline

Definition at line 29 of file AthenaRootConverterHandle.h.

29 { return m_converter->ClassName(); }

◆ ReadBuffer()

void AthenaRootConverterHandle::ReadBuffer ( TBuffer &  b,
void *  obj,
Version_t  version,
UInt_t  R__s,
UInt_t  R__c 
)
virtual

Definition at line 26 of file AthenaRootConverterHandle.cxx.

27 {
28  if (m_oldObj == 0) {
30  m_oldClass = gROOT->GetClass( m_converter->TypeIDOld() );
31  }
32  if( !m_oldClass ) {
33  std::cerr << "-- AthenaRootConverterHandle::ReadBuffer - ERROR - Class name:"
34  << m_converter->ClassName() << ", typeid:" << m_converter->TypeIDOld().name()
35  << "; can NOT read the object - failed to get TClass (possibly unknown to dictionary)"
36  << std::endl;
37  return;
38  }
39 // std::cout << "-- AthenaRootConverterHandle::ReadBuffer - Class name:"
40 // << m_converter->ClassName() << ", m_oldClass=" << m_oldClass
41 // << ", typeid:" << m_converter->TypeIDOld().name() << std::endl;
42  m_oldClass->ReadBuffer(b, m_oldObj, version, R__s, R__c);
44 }

◆ StreamerChecksum()

unsigned AthenaRootConverterHandle::StreamerChecksum ( )
inline

Definition at line 30 of file AthenaRootConverterHandle.h.

30 { return m_converter->StreamerChecksum(); }

Member Data Documentation

◆ m_converter

T_AthenaRootConverterBase* AthenaRootConverterHandle::m_converter
protected

Definition at line 35 of file AthenaRootConverterHandle.h.

◆ m_oldClass

TClass* AthenaRootConverterHandle::m_oldClass
protected

Definition at line 33 of file AthenaRootConverterHandle.h.

◆ m_oldObj

void* AthenaRootConverterHandle::m_oldObj
protected

Definition at line 34 of file AthenaRootConverterHandle.h.


The documentation for this class was generated from the following files:
T_AthenaRootConverterBase::ClassName
const std::string & ClassName()
Definition: T_AthenaRootConverter.h:27
T_AthenaRootConverterBase::InstantiateOld
virtual void * InstantiateOld()=0
Create an instance of the old object.
T_AthenaRootConverterBase::StreamerChecksum
unsigned StreamerChecksum()
Definition: T_AthenaRootConverter.h:28
T_AthenaRootConverterBase::TypeIDOld
virtual const std::type_info & TypeIDOld()=0
Get typeinfo of the old object type.
AthenaRootConverterHandle::m_converter
T_AthenaRootConverterBase * m_converter
Definition: AthenaRootConverterHandle.h:35
AthenaRootConverterHandle::m_oldObj
void * m_oldObj
Definition: AthenaRootConverterHandle.h:34
plotBeamSpotMon.b
b
Definition: plotBeamSpotMon.py:77
AthenaRootConverterHandle::m_oldClass
TClass * m_oldClass
Definition: AthenaRootConverterHandle.h:33
get_generator_info.version
version
Definition: get_generator_info.py:33
T_AthenaRootConverterBase::Convert
virtual void Convert(const void *old_obj, void *new_obj)=0
General (typeless) invocation of the convertion function in the derived templated class it calls the ...
python.PyAthena.obj
obj
Definition: PyAthena.py:135