ATLAS Offline Software
Public Types | Public Member Functions | Public Attributes | List of all members
TBranchAuxDynReader::BranchInfo Struct Reference

#include <TBranchAuxDynReader.h>

Collaboration diagram for TBranchAuxDynReader::BranchInfo:

Public Types

enum  Status { NotInitialized, Initialized, TypeError, NotFound }
 

Public Member Functions

void setAddress (void *data)
 

Public Attributes

TBranch * branch = 0
 
TClass * tclass = 0
 
EDataType edtyp = kOther_t
 
bool needsSE = false
 
TClass * SE_tclass = 0
 
EDataType SE_edt = kOther_t
 
bool isPackedContainer = false
 
enum Status status = NotInitialized
 
SG::auxid_t auxid
 
std::string attribName
 

Detailed Description

Definition at line 23 of file TBranchAuxDynReader.h.

Member Enumeration Documentation

◆ Status

Enumerator
NotInitialized 
Initialized 
TypeError 
NotFound 

Definition at line 25 of file TBranchAuxDynReader.h.

Member Function Documentation

◆ setAddress()

void TBranchAuxDynReader::BranchInfo::setAddress ( void *  data)

Definition at line 125 of file TBranchAuxDynReader.cxx.

126 {
127  if( needsSE ) {
128  if( (edtyp == kULong_t or edtyp == kULong64_t or edtyp == kLong_t or edtyp == kLong64_t) and
129  (SE_edt == kULong_t or SE_edt == kULong64_t or SE_edt == kLong_t or SE_edt == kLong64_t) and
130  sizeof(Long_t) == sizeof(Long64_t) ) {
131  // There is no need to attempt ROOT schema evolution between these types (and it will not work anyhow)
132  needsSE = false;
133  }
134  }
135  if( needsSE ) {
136  // reading through the TTree - allows for schema evolution
137  int rc = branch->GetTree()->SetBranchAddress( branch->GetName(), data, SE_tclass, SE_edt, true);
138  if( rc < 0 ) {
139  std::ostringstream msg;
140  msg << "SetBranchAddress() failed for " << branch->GetName() << " error=" << rc;
141  throw msg.str();
142  }
143  } else {
144  branch->SetAddress(data);
145  }
146 }

Member Data Documentation

◆ attribName

std::string TBranchAuxDynReader::BranchInfo::attribName

Definition at line 40 of file TBranchAuxDynReader.h.

◆ auxid

SG::auxid_t TBranchAuxDynReader::BranchInfo::auxid

Definition at line 39 of file TBranchAuxDynReader.h.

◆ branch

TBranch* TBranchAuxDynReader::BranchInfo::branch = 0

Definition at line 27 of file TBranchAuxDynReader.h.

◆ edtyp

EDataType TBranchAuxDynReader::BranchInfo::edtyp = kOther_t

Definition at line 29 of file TBranchAuxDynReader.h.

◆ isPackedContainer

bool TBranchAuxDynReader::BranchInfo::isPackedContainer = false

Definition at line 36 of file TBranchAuxDynReader.h.

◆ needsSE

bool TBranchAuxDynReader::BranchInfo::needsSE = false

Definition at line 32 of file TBranchAuxDynReader.h.

◆ SE_edt

EDataType TBranchAuxDynReader::BranchInfo::SE_edt = kOther_t

Definition at line 34 of file TBranchAuxDynReader.h.

◆ SE_tclass

TClass* TBranchAuxDynReader::BranchInfo::SE_tclass = 0

Definition at line 33 of file TBranchAuxDynReader.h.

◆ status

enum Status TBranchAuxDynReader::BranchInfo::status = NotInitialized

Definition at line 36 of file TBranchAuxDynReader.h.

◆ tclass

TClass* TBranchAuxDynReader::BranchInfo::tclass = 0

Definition at line 28 of file TBranchAuxDynReader.h.


The documentation for this struct was generated from the following files:
TBranchAuxDynReader::BranchInfo::Initialized
@ Initialized
Definition: TBranchAuxDynReader.h:25
TBranchAuxDynReader::BranchInfo::SE_tclass
TClass * SE_tclass
Definition: TBranchAuxDynReader.h:33
data
char data[hepevt_bytes_allocation_ATLAS]
Definition: HepEvt.cxx:11
TBranchAuxDynReader::BranchInfo::branch
TBranch * branch
Definition: TBranchAuxDynReader.h:27
TBranchAuxDynReader::BranchInfo::edtyp
EDataType edtyp
Definition: TBranchAuxDynReader.h:29
TBranchAuxDynReader::BranchInfo::NotFound
@ NotFound
Definition: TBranchAuxDynReader.h:25
TBranchAuxDynReader::BranchInfo::NotInitialized
@ NotInitialized
Definition: TBranchAuxDynReader.h:25
TBranchAuxDynReader::BranchInfo::TypeError
@ TypeError
Definition: TBranchAuxDynReader.h:25
TBranchAuxDynReader::BranchInfo::SE_edt
EDataType SE_edt
Definition: TBranchAuxDynReader.h:34
TBranchAuxDynReader::BranchInfo::needsSE
bool needsSE
Definition: TBranchAuxDynReader.h:32
python.AutoConfigFlags.msg
msg
Definition: AutoConfigFlags.py:7
python.trfValidateRootFile.rc
rc
Definition: trfValidateRootFile.py:350