ATLAS Offline Software
xAODTMetaBranch.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 //
3 // Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
4 //
5 #ifndef XAODROOTACCESS_TOOLS_XAODTMETABRANCH_H
6 #define XAODROOTACCESS_TOOLS_XAODTMETABRANCH_H
7 
8 // System include(s):
9 #include <typeinfo>
10 
11 // ROOT include(s):
12 #include <TBranchObject.h>
13 
14 // Forward declaration(s).
15 namespace xAOD {
16  class TEvent;
17 }
18 
27 class xAODTMetaBranch : public ::TBranchObject {
28 
29 public:
32  const std::type_info& ti, const char* brName,
33  const char* brType );
34 
35  // Note that the virtual functions are not marked with "override" because the
36  // functions defined by ClassDef are not marked like that either. So using
37  // "override" on just these functions would introduce a compile time warning.
38 
40  virtual ::Int_t GetEntry( ::Long64_t entry, ::Int_t getall );
41 
43  virtual ::TClass* IsA() const;
44 
45 private:
48  const std::type_info* m_ti;
50  const void* m_object;
52 
54 #define IsA IsARoot
55  ClassDef( xAODTMetaBranch, 0 )
56 #undef IsA
57 
58 }; // class xAODTMetaBranch
59 
60 #endif // XAODROOTACCESS_TOOLS_XAODTMETABRANCH_H
xAODTMetaBranch::GetEntry
virtual ::Int_t GetEntry(::Long64_t entry, ::Int_t getall)
Function getting the current entry/file for this branch.
Definition: xAODTMetaBranch.cxx:32
xAODTMetaBranch::IsA
virtual ::TClass * IsA() const
Function returning the type of ::TBranchObject.
Definition: xAODTMetaBranch.cxx:73
checkxAOD.brName
brName
Definition: Tools/PyUtils/bin/checkxAOD.py:114
xAODTMetaBranch::m_object
const void * m_object
Pointer to the object read in using TEvent.
Definition: xAODTMetaBranch.h:51
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
xAODTMetaBranch::m_event
xAOD::TEvent * m_event
Pointer to the TEvent object reading the persistent tree.
Definition: xAODTMetaBranch.h:47
xAODTMetaBranch
Specialised class for browsing xAOD metadata interface objects in ROOT.
Definition: xAODTMetaBranch.h:27
xAODTMetaBranch::xAODTMetaBranch
xAODTMetaBranch(::TTree &parent, xAOD::TEvent &event, const std::type_info &ti, const char *brName, const char *brType)
Constructor with all the needed parameters.
event
POOL::TEvent event(POOL::TEvent::kClassAccess)
test_pyathena.parent
parent
Definition: test_pyathena.py:15
GetAllXsec.entry
list entry
Definition: GetAllXsec.py:132
xAODTMetaBranch::m_ti
const std::type_info * m_ti
The type of the object that needs to be read.
Definition: xAODTMetaBranch.h:49
xAOD::TEvent
Tool for accessing xAOD files outside of Athena.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:84