ATLAS Offline Software
Loading...
Searching...
No Matches
EventReaderAlg Class Reference

#include <EventReaderAlg.h>

Inheritance diagram for EventReaderAlg:

Public Member Functions

 EventReaderAlg (const std::string &name, ISvcLocator *pSvcLocator)
virtual ~EventReaderAlg ()=default
virtual StatusCode initialize () override
virtual StatusCode execute (const EventContext &ctx) override
 Execute method.
virtual StatusCode finalize () override
virtual StatusCode sysInitialize () override
 Override sysInitialize.
virtual const DataObjIDColl & extraOutputDeps () const override
 Return the list of extra output dependencies.
bool filterPassed (const EventContext &ctx) const
void setFilterPassed (bool state, const EventContext &ctx) const
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode sysStart () override
 Handle START transition.
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles.
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles.
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T, V, H > &t)
void updateVHKA (Gaudi::Details::PropertyBase &)
MsgStream & msg () const
bool msgLvl (const MSG::Level lvl) const
const EventContext & getContext () const
 Deprecated methods (use the ones with EventContext).
bool filterPassed () const
void setFilterPassed (bool state) const

Protected Member Functions

bool isEtaOutsideLArCrack (float absEta)
bool isTagElectron (const xAOD::Electron *electron)
bool isGoodProbeElectron (const xAOD::Electron *el)
bool trackSelectionElectrons (const xAOD::Electron *electron, SG::ReadHandle< xAOD::VertexContainer > &primVertexCnt, SG::ReadHandle< xAOD::EventInfo > &ei)
bool eOverPElectron (const xAOD::Electron *electron)
int getCaloRegionIndex (const CaloCell *cell)
double fixPhi (double phi)
double deltaPhi (double phi1, double phi2)
double deltaR (double eta, double phi)
void clear ()
void clearLBData ()
void bookBranches (TTree *tree)
void bookDatabaseBranches (TTree *tree)
virtual bool isReEntrant () const override final
 Legacy algorithms are not thread-safe.
void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed.

Protected Attributes

Gaudi::Property< float > m_elecEtaCut {this, "electronEtaCut", 1.4, "Electron |eta| cut value."}
Gaudi::Property< std::string > m_offTagTightness {this, "offTagTightness", "LHMedium"}
Gaudi::Property< std::string > m_offProbeTightness {this, "offProbeTightness", "Loose"}
 Define the PID for tag electron.
Gaudi::Property< float > m_etMinProbe {this, "etMinProbe", 15 ,"Min electron Pt value for Zee probe selection loose (GeV)."}
 define the Pid of Probe from the user
Gaudi::Property< float > m_etMinTag {this, "etMinTag", 15 ,"Min Et value for the electrons in Zee tag selection (GeV)."}
Gaudi::Property< float > m_d0TagSig {this, "d0TagSig", 5, "d_0 transverse impact parameter significance."}
Gaudi::Property< float > m_z0Tag {this, "z0Tag", 0.5, "z0 longitudinal impact parameter (mm)"}
Gaudi::Property< bool > m_doElecSelectByTrackOnly {this, "doElecSelectByTrackOnly", false, "Perform electron selection by track only, witout tag and probe."}
Gaudi::Property< bool > m_doTagAndProbe {this, "doTagAndProbe", true, "First, the electrons are selected by track criteria, then, perform Tag and Probe selection for Zee."}
Gaudi::Property< bool > m_doPhotonDump {this, "doPhotonDump", false, "Perform a photon particle dump based on offline Photons Container."}
Gaudi::Property< bool > m_doTruthEventDump {this, "doTruthEventDump", false, "Dump the Truth Event variables."}
Gaudi::Property< bool > m_doTruthPartDump {this, "doTruthPartDump", false, "Perform a truth particle dump."}
Gaudi::Property< bool > m_doLArEMBHitsDump {this, "doLArEMBHitsDump", false, "Dump the EMB HITs container energy and time."}
Gaudi::Property< bool > m_isMC {this, "isMC", false, "Switch the dumper to MC sample mode."}
Gaudi::Property< bool > m_getLArCalibConstants {this, "getLArCalibConstants", false, "Get the LAr calorimeter calibration constants, related to cells energy and time (online and offline)."}
Gaudi::Property< bool > m_noBadCells {this, "noBadCells", true, "If True, skip the cells tagged as badCells/channels."}
Gaudi::Property< bool > m_doAssocTopoCluster711Dump {this, "doAssocTopoCluster711Dump", false, "Dump the 7x11 EMB2 window cells."}
TTree * m_Tree {}
TTree * m_secondTree {}
std::vector< std::vector< float > > * m_lb_bcidLuminosity = nullptr
std::vector< int > * m_lb_lumiblock = nullptr
unsigned int m_e_runNumber = 9999
unsigned int m_e_bcid = 9999
unsigned long long m_e_eventNumber = 9999
int m_e_lumiBlock = 999
float m_e_inTimePileup = -999
float m_e_outOfTimePileUp = -999
int m_c_clusterIndexCounter = 0
std::vector< int > * m_c_clusterIndex = nullptr
std::vector< int > * m_c_electronIndex_clusterLvl = nullptr
std::vector< double > * m_c_clusterEnergy = nullptr
std::vector< double > * m_c_clusterTime = nullptr
std::vector< double > * m_c_clusterEta = nullptr
std::vector< double > * m_c_clusterPhi = nullptr
std::vector< double > * m_c_clusterPt = nullptr
int m_c_cellIndexCounter = 0
std::vector< int > * m_c_clusterIndex_cellLvl = nullptr
std::vector< int > * m_c_clusterCellIndex = nullptr
std::vector< int > * m_c_cellGain = nullptr
std::vector< int > * m_c_cellLayer = nullptr
std::vector< int > * m_c_cellRegion = nullptr
std::vector< double > * m_c_cellEnergy = nullptr
std::vector< double > * m_c_cellTime = nullptr
std::vector< double > * m_c_cellEta = nullptr
std::vector< double > * m_c_cellPhi = nullptr
std::vector< double > * m_c_cellDEta = nullptr
std::vector< double > * m_c_cellDPhi = nullptr
std::vector< double > * m_c_cellToClusterDPhi = nullptr
std::vector< double > * m_c_cellToClusterDEta = nullptr
std::vector< int > * m_c_clusterIndex_chLvl = nullptr
std::vector< int > * m_c_clusterChannelIndex = nullptr
std::vector< std::vector< int > > * m_c_channelChInfo = nullptr
std::vector< std::vector< float > > * m_c_channelDigits = nullptr
std::vector< double > * m_c_channelEnergy = nullptr
std::vector< double > * m_c_channelTime = nullptr
std::vector< int > * m_c_channelLayer = nullptr
std::vector< bool > * m_c_channelBad = nullptr
std::vector< unsigned int > * m_c_channelHashMap = nullptr
std::vector< unsigned int > * m_c_channelChannelIdMap = nullptr
std::vector< float > * m_c_channelEffectiveSigma = nullptr
std::vector< float > * m_c_channelNoise = nullptr
std::vector< float > * m_c_channelDSPThreshold = nullptr
std::vector< std::vector< double > > * m_c_channelOFCa = nullptr
std::vector< std::vector< double > > * m_c_channelOFCb = nullptr
std::vector< std::vector< double > > * m_c_channelShape = nullptr
std::vector< std::vector< double > > * m_c_channelShapeDer = nullptr
std::vector< double > * m_c_channelOFCTimeOffset = nullptr
std::vector< float > * m_c_channelADC2MEV0 = nullptr
std::vector< float > * m_c_channelADC2MEV1 = nullptr
std::vector< float > * m_c_channelPed = nullptr
std::vector< float > * m_c_channelMinBiasAvg = nullptr
std::vector< float > * m_c_channelOfflHVScale = nullptr
std::vector< float > * m_c_channelOfflEneRescaler = nullptr
std::vector< std::vector< int > > * m_c_rawChannelChInfo = nullptr
std::vector< unsigned int > * m_c_rawChannelIdMap = nullptr
std::vector< float > * m_c_rawChannelAmplitude = nullptr
std::vector< float > * m_c_rawChannelTime = nullptr
std::vector< int > * m_c_rawChannelLayer = nullptr
std::vector< float > * m_c_rawChannelPed = nullptr
std::vector< float > * m_c_rawChannelProv = nullptr
std::vector< float > * m_c_rawChannelQuality = nullptr
std::vector< float > * m_c_clusterRawChannelIndex = nullptr
std::vector< int > * m_c_clusterIndex_rawChLvl = nullptr
std::vector< float > * m_c_rawChannelDSPThreshold = nullptr
size_t m_ncell = 0
const double m_minEnergy = 1e-9
std::vector< int > * m_hits_sampling = nullptr
std::vector< int > * m_hits_clusterIndex_chLvl = nullptr
std::vector< int > * m_hits_clusterChannelIndex = nullptr
std::vector< unsigned int > * m_hits_hash = nullptr
std::vector< double > * m_hits_energy = nullptr
std::vector< double > * m_hits_time = nullptr
std::vector< float > * m_hits_sampFrac = nullptr
std::vector< double > * m_hits_energyConv = nullptr
std::vector< double > * m_hits_cellEta = nullptr
std::vector< double > * m_hits_cellPhi = nullptr
int * m_c711_clusterIndexCounter = 0
std::vector< int > * m_c711_clusterIndex = nullptr
std::vector< int > * m_c711_electronIndex_clusterLvl = nullptr
std::vector< double > * m_c711_clusterEnergy = nullptr
std::vector< double > * m_c711_clusterTime = nullptr
std::vector< double > * m_c711_clusterEta = nullptr
std::vector< double > * m_c711_clusterPhi = nullptr
std::vector< double > * m_c711_clusterPt = nullptr
int * m_c711_cellIndexCounter = nullptr
std::vector< int > * m_c711_clusterIndex_cellLvl = nullptr
std::vector< int > * m_c711_clusterCellIndex = nullptr
std::vector< int > * m_c711_cellGain = nullptr
std::vector< int > * m_c711_cellLayer = nullptr
std::vector< int > * m_c711_cellRegion = nullptr
std::vector< double > * m_c711_cellEnergy = nullptr
std::vector< double > * m_c711_cellTime = nullptr
std::vector< double > * m_c711_cellEta = nullptr
std::vector< double > * m_c711_cellPhi = nullptr
std::vector< double > * m_c711_cellDEta = nullptr
std::vector< double > * m_c711_cellDPhi = nullptr
std::vector< double > * m_c711_cellToClusterDPhi = nullptr
std::vector< double > * m_c711_cellToClusterDEta = nullptr
std::vector< int > * m_c711_clusterIndex_chLvl = nullptr
std::vector< int > * m_c711_clusterChannelIndex = nullptr
std::vector< std::vector< int > > * m_c711_channelChInfo = nullptr
std::vector< std::vector< float > > * m_c711_channelDigits = nullptr
std::vector< double > * m_c711_channelEnergy = nullptr
std::vector< double > * m_c711_channelTime = nullptr
std::vector< int > * m_c711_channelLayer = nullptr
std::vector< bool > * m_c711_channelBad = nullptr
std::vector< unsigned int > * m_c711_channelHashMap = nullptr
std::vector< unsigned int > * m_c711_channelChannelIdMap = nullptr
std::vector< float > * m_c711_channelEffectiveSigma = nullptr
std::vector< float > * m_c711_channelNoise = nullptr
std::vector< float > * m_c711_channelDSPThreshold = nullptr
std::vector< std::vector< double > > * m_c711_channelOFCa = nullptr
std::vector< std::vector< double > > * m_c711_channelOFCb = nullptr
std::vector< std::vector< double > > * m_c711_channelShape = nullptr
std::vector< std::vector< double > > * m_c711_channelShapeDer = nullptr
std::vector< double > * m_c711_channelOFCTimeOffset = nullptr
std::vector< float > * m_c711_channelADC2MEV0 = nullptr
std::vector< float > * m_c711_channelADC2MEV1 = nullptr
std::vector< float > * m_c711_channelPed = nullptr
std::vector< float > * m_c711_channelMinBiasAvg = nullptr
std::vector< float > * m_c711_channelOfflHVScale = nullptr
std::vector< float > * m_c711_channelOfflEneRescaler = nullptr
std::vector< std::vector< int > > * m_c711_rawChannelChInfo = nullptr
std::vector< unsigned int > * m_c711_rawChannelIdMap = nullptr
std::vector< float > * m_c711_rawChannelAmplitude = nullptr
std::vector< float > * m_c711_rawChannelTime = nullptr
std::vector< int > * m_c711_rawChannelLayer = nullptr
std::vector< float > * m_c711_rawChannelPed = nullptr
std::vector< float > * m_c711_rawChannelProv = nullptr
std::vector< float > * m_c711_rawChannelQuality = nullptr
std::vector< float > * m_c711_clusterRawChannelIndex = nullptr
std::vector< int > * m_c711_clusterIndex_rawChLvl = nullptr
std::vector< float > * m_c711_rawChannelDSPThreshold = nullptr
std::vector< float > * m_mc_part_energy = nullptr
std::vector< float > * m_mc_part_pt = nullptr
std::vector< float > * m_mc_part_m = nullptr
std::vector< float > * m_mc_part_eta = nullptr
std::vector< float > * m_mc_part_phi = nullptr
std::vector< int > * m_mc_part_pdgId = nullptr
std::vector< int > * m_mc_part_status = nullptr
std::vector< int > * m_mc_part_uniqueID = nullptr
std::vector< float > * m_mc_vert_x = nullptr
std::vector< float > * m_mc_vert_y = nullptr
std::vector< float > * m_mc_vert_z = nullptr
std::vector< float > * m_mc_vert_time = nullptr
std::vector< float > * m_mc_vert_perp = nullptr
std::vector< float > * m_mc_vert_eta = nullptr
std::vector< float > * m_mc_vert_phi = nullptr
std::vector< int > * m_mc_vert_uniqueID = nullptr
std::vector< int > * m_mc_vert_status = nullptr
std::vector< float > * m_vtx_x = nullptr
std::vector< float > * m_vtx_y = nullptr
std::vector< float > * m_vtx_z = nullptr
std::vector< float > * m_vtx_deltaZ0 = nullptr
std::vector< float > * m_vtx_delta_z0_sin = nullptr
std::vector< double > * m_vtx_d0sig = nullptr
std::vector< float > * m_ph_eta = nullptr
std::vector< float > * m_ph_phi = nullptr
std::vector< float > * m_ph_pt = nullptr
std::vector< float > * m_ph_energy = nullptr
std::vector< float > * m_ph_m = nullptr
std::vector< int > * m_el_index = nullptr
std::vector< float > * m_el_Pt = nullptr
std::vector< float > * m_el_et = nullptr
std::vector< float > * m_el_Eta = nullptr
std::vector< float > * m_el_Phi = nullptr
std::vector< float > * m_el_m = nullptr
std::vector< float > * m_el_eoverp = nullptr
std::vector< float > * m_el_f1 = nullptr
std::vector< float > * m_el_f3 = nullptr
std::vector< float > * m_el_eratio = nullptr
std::vector< float > * m_el_weta1 = nullptr
std::vector< float > * m_el_weta2 = nullptr
std::vector< float > * m_el_fracs1 = nullptr
std::vector< float > * m_el_wtots1 = nullptr
std::vector< float > * m_el_e277 = nullptr
std::vector< float > * m_el_reta = nullptr
std::vector< float > * m_el_rphi = nullptr
std::vector< float > * m_el_deltae = nullptr
std::vector< float > * m_el_rhad = nullptr
std::vector< float > * m_el_rhad1 = nullptr
std::vector< float > * m_tp_electronPt = nullptr
std::vector< float > * m_tp_electronEt = nullptr
std::vector< float > * m_tp_electronEta = nullptr
std::vector< float > * m_tp_electronPhi = nullptr
std::vector< int > * m_tp_probeIndex = nullptr
std::vector< int > * m_tp_tagIndex = nullptr
std::vector< bool > * m_tp_isTag = nullptr
std::vector< bool > * m_tp_isProbe = nullptr
std::vector< double > * m_zee_M = nullptr
std::vector< double > * m_zee_E = nullptr
std::vector< double > * m_zee_pt = nullptr
std::vector< double > * m_zee_px = nullptr
std::vector< double > * m_zee_py = nullptr
std::vector< double > * m_zee_pz = nullptr
std::vector< double > * m_zee_T = nullptr
std::vector< double > * m_zee_deltaR = nullptr

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t

Private Member Functions

virtual StatusCode dumpEventInfo (SG::ReadHandle< xAOD::EventInfo > &ei)
virtual StatusCode dumpLumiblockInfo (SG::ReadHandle< xAOD::EventInfo > &ei)
virtual StatusCode dumpClusterCells (const xAOD::CaloCluster *cl, int clusIndex, const EventContext &ctx)
virtual StatusCode dumpOfflineSS (const xAOD::Electron *electron)
virtual StatusCode dumpTruthParticle (SG::ReadHandle< xAOD::ElectronContainer > &electronSelectionCnt, SG::ReadHandle< xAOD::TruthParticleContainer > &truthParticleCnt)
virtual StatusCode dumpElectrons (const xAOD::Electron *electron)
virtual StatusCode dumpZeeCut (SG::ReadHandle< xAOD::EventInfo > &ei, SG::ReadHandle< xAOD::VertexContainer > &primVertexCnt, const EventContext &ctx)
virtual StatusCode dumpPrimVertexAssocToElectron (const xAOD::Electron *el, SG::ReadHandle< xAOD::VertexContainer > &primVertexCnt, SG::ReadHandle< xAOD::EventInfo > &evtInfo)
virtual StatusCode FillNTupleWithSelectedElectrons (SG::ReadHandle< xAOD::EventInfo > &ei, SG::ReadHandle< xAOD::VertexContainer > &primVertexCnt, SG::ReadHandle< xAOD::ElectronContainer > &electronSelectionCnt, std::string &eSelectionText, const EventContext &ctx)
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey>

Private Attributes

Gaudi::Property< bool > m_printCellsClus {this, "printCellsClus", false, "Print out the cluster cells basic info during the dump."}
Gaudi::Property< bool > m_doClusterDump {this, "doClusterDump", false, "Perform a cluster cell dump based on Cluster Container name m_clusterName"}
Gaudi::Property< bool > m_getAssociatedTopoCluster {this, "getAssociatedTopoCluster", true, "Get the topo cluster associated to a super cluster, which was linked to an Electron."}
Gaudi::Property< bool > m_skipEmptyEvents {this, "skipEmptyEvents", true, "If true, do not fill the event that has no reco electrons."}
Gaudi::Property< float > m_minZeeMassTP {this, "minZeeMassTP", 66, "Minimum value of Zee mass for checking the TP pairs (GeV)."}
Gaudi::Property< float > m_maxZeeMassTP {this, "maxZeeMassTP", 116, "Maximum value of Zee mass for checking the TP pairs (GeV)."}
ServiceHandle< ITHistSvc > m_ntsvc
SG::ReadCondHandleKey< CaloNoisem_noiseCDOKey {this,"CaloNoiseKey","totalNoise","SG Key of CaloNoise data object"}
SG::ReadCondHandleKey< AthenaAttributeListm_run2DSPThresholdsKey {this, "Run2DSPThresholdsKey","", "SG Key for thresholds to compute time and quality, run 2"}
SG::ReadCondHandleKey< AthenaAttributeListm_EneRescalerFldr {this,"OflEneRescalerKey","/LAR/CellCorrOfl/EnergyCorr", "Key (=foldername) of AttrListCollection"}
SG::ReadCondHandleKey< LuminosityCondDatam_lumiDataKey {this,"LumiKey", "LuminosityCondData","SG Key of LuminosityCondData object"}
SG::ReadCondHandleKey< ILArPedestalm_pedestalKey {this,"PedestalKey","LArPedestal","SG Key of Pedestal conditions object"}
SG::ReadCondHandleKey< LArADC2MeVm_adc2MeVKey {this,"ADC2MeVKey","LArADC2MeV","SG Key of ADC2MeV conditions object"}
SG::ReadCondHandleKey< ILArOFCm_ofcKey {this,"OFCKey","LArOFC","SG Key of OFC conditions object"}
SG::ReadCondHandleKey< ILArShapem_shapeKey {this,"ShapeKey","LArShape","SG Key of Shape conditions object"}
SG::ReadCondHandleKey< ILArMinBiasAveragem_minBiasAvgKey {this, "MinBiasAvgKey", "LArPileupAverageSym", "SGKey of LArMinBiasAverage object"}
SG::ReadCondHandleKey< LArHVCorrm_offlineHVScaleCorrKey {this, "keyOfflineHVCorr", "LArHVScaleCorrRecomputed","Key for LArHVScaleCorr"}
SG::ReadCondHandleKey< ILArfSamplm_fSamplKey {this, "fSamplKey", "LArfSamplSym","SG key of LArfSampl object."}
SG::ReadCondHandleKey< LArOnOffIdMappingm_larCablingKey {this,"LArOnOffMapKey","LArOnOffIdMap"," SG Key of LArOnOffIdMapping object."}
SG::ReadHandleKey< xAOD::EventInfom_eventInfoSgKey {this, "EventInfoContainerKey", "EventInfo", "Name of the EventInfo Container"}
SG::ReadHandleKey< xAOD::VertexContainerm_primVertSgKey {this, "PrimaryVertexContainerKey", "PrimaryVertices", "Name of the PrimaryVertices Container"}
SG::ReadHandleKey< xAOD::CaloClusterContainerm_caloClusSgKey {this, "CaloClusterContainerKey", "CaloCalTopoClusters", "Name of the CaloCluster Container"}
SG::ReadHandleKey< xAOD::ElectronContainerm_myElecSelectionSgKey {this, "MyElectronSelectionKey", "MySelectedElectrons", "Name of the MySelectedElectrons Container"}
SG::ReadHandleKey< xAOD::TruthParticleContainerm_truthParticleCntSgKey {this, "TruthParticleContainerKey", "TruthParticles", "Name of the TruthParticles Container"}
SG::ReadHandleKey< xAOD::ElectronContainerm_electronCntSgKey {this, "ElectronContainerKey", "Electrons", "Name of the Electrons Container"}
SG::ReadHandleKey< xAOD::TruthEventContainerm_truthEventCntSgKey {this, "TruthEventContainerKey", "TruthEvents", "Name of the TruthEvents Container"}
SG::ReadHandleKey< LArHitContainerm_larEMBHitCntSgKey {this, "LArEMBHitContainerKey", "LArHitEMB", "Name of the LArHitEMB container"}
SG::ReadHandleKey< LArDigitContainerm_larDigitCntSgKey {this, "LArDigitContainerKey", "LArDigitContainer_MC", "Name of the LArDigits container"}
SG::ReadHandleKey< LArRawChannelContainerm_larRawChCntSgKey {this, "LArRawChannelContainerKey", "LArRawChannels", "Name of the LArRawChannel container"}
SG::ReadHandleKey< CaloCellContainerm_allCaloCellCntSgKey {this, "CaloCellContainerKey", "AllCalo", "Name of the CaloCell container"}
std::unique_ptr< LArDSPThresholdsFlatm_run2DSPThresh = nullptr
const CaloNoisem_noiseCDO = nullptr
const LuminosityCondDatam_lumis = nullptr
const ILArPedestalm_peds = nullptr
const LArADC2MeVm_adc2MeVs = nullptr
const ILArOFCm_ofcs = nullptr
const ILArShapem_shapes = nullptr
const ILArMinBiasAveragem_minBiasAvgs = nullptr
const LArHVCorrm_oflHVCorr = nullptr
const CaloCondBlobFltm_EneRescaler = nullptr
const ILArfSamplm_fSampl = nullptr
const LArOnlineIDm_onlineLArID = nullptr
const LArOnOffIdMappingm_larCabling = nullptr
const CaloIdManagerm_caloIdMgr = nullptr
const LArEM_IDm_larem_id = nullptr
const LArHEC_IDm_larhec_id = nullptr
const LArFCAL_IDm_larfcal_id = nullptr
const CaloCell_IDm_calocell_id = nullptr
DataObjIDColl m_extendedExtraObjects
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default).
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default).
std::vector< SG::VarHandleKeyArray * > m_vhka
bool m_varHandleArraysDeclared

Detailed Description

Definition at line 45 of file EventReaderAlg.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ EventReaderAlg()

EventReaderAlg::EventReaderAlg ( const std::string & name,
ISvcLocator * pSvcLocator )

Definition at line 29 of file EventReaderAlg.cxx.

29 :
30 EventReaderBaseAlg(name, pSvcLocator)
31 , m_ntsvc("THistSvc/THistSvc", name)
32 {}
ServiceHandle< ITHistSvc > m_ntsvc
EventReaderBaseAlg(const std::string &name, ISvcLocator *pSvcLocator)

◆ ~EventReaderAlg()

virtual EventReaderAlg::~EventReaderAlg ( )
virtualdefault

Member Function Documentation

◆ bookBranches()

void EventReaderBaseAlg::bookBranches ( TTree * tree)
protectedinherited

Definition at line 253 of file EventReaderBaseAlg.cxx.

253 {
254 // ## Event info
255 tree->Branch ("event_RunNumber", &m_e_runNumber);
256 tree->Branch ("event_EventNumber", &m_e_eventNumber);
257 tree->Branch ("event_BCID", &m_e_bcid);
258 tree->Branch ("event_Lumiblock",&m_e_lumiBlock);
259 tree->Branch ("event_avg_mu_inTimePU", &m_e_inTimePileup);
260 tree->Branch ("event_avg_mu_OOTimePU", &m_e_outOfTimePileUp);
261 // #############
262
263 // ## Cluster
264 tree->Branch ("cluster_index",&m_c_clusterIndex);
265 tree->Branch ("c_electronIndex_clusterLvl",&m_c_electronIndex_clusterLvl);
266 tree->Branch ("cluster_et",&m_c_clusterEnergy);
267 tree->Branch ("cluster_time",&m_c_clusterTime);
268 tree->Branch ("cluster_pt",&m_c_clusterPt);
269 tree->Branch ("cluster_eta",&m_c_clusterEta);
270 tree->Branch ("cluster_phi",&m_c_clusterPhi);
271 // Cluster cell
272 tree->Branch ("cluster_index_cellLvl",&m_c_clusterIndex_cellLvl);
273 tree->Branch ("cluster_cell_index",&m_c_clusterCellIndex);
274 tree->Branch ("cluster_cell_caloGain",&m_c_cellGain);
275 tree->Branch ("cluster_cell_layer",&m_c_cellLayer);
276 tree->Branch ("cluster_cell_region",&m_c_cellRegion);
277 tree->Branch ("cluster_cell_energy",&m_c_cellEnergy);
278 tree->Branch ("cluster_cell_time",&m_c_cellTime);
279 tree->Branch ("cluster_cell_eta",&m_c_cellEta);
280 tree->Branch ("cluster_cell_phi",&m_c_cellPhi);
281 tree->Branch ("cluster_cell_deta",&m_c_cellDEta);
282 tree->Branch ("cluster_cell_dphi",&m_c_cellDPhi);
283 tree->Branch ("cluster_cellsDist_dphi",&m_c_cellToClusterDPhi);
284 tree->Branch ("cluster_cellsDist_deta",&m_c_cellToClusterDEta);
285 // Cluster channel (digits and cell ch)
286 tree->Branch ("cluster_index_chLvl",&m_c_clusterIndex_chLvl);
287 tree->Branch ("cluster_channel_index",&m_c_clusterChannelIndex);
288 tree->Branch ("cluster_channel_digits",&m_c_channelDigits);
289 tree->Branch ("cluster_channel_energy",&m_c_channelEnergy);
290 tree->Branch ("cluster_channel_time",&m_c_channelTime);
291 tree->Branch ("cluster_channel_layer",&m_c_channelLayer);
292 if (!m_noBadCells) tree->Branch ("cluster_channel_bad",&m_c_channelBad);
293 tree->Branch ("cluster_channel_chInfo", &m_c_channelChInfo);
294 tree->Branch ("cluster_channel_hash",&m_c_channelHashMap);
295 tree->Branch ("cluster_channel_id",&m_c_channelChannelIdMap);
297 tree->Branch ("cluster_channel_effSigma",&m_c_channelEffectiveSigma);
298 tree->Branch ("cluster_channel_noise",&m_c_channelNoise);
299 tree->Branch ("cluster_channel_DSPThreshold",&m_c_channelDSPThreshold);
300 tree->Branch ("cluster_channel_OFCTimeOffset",&m_c_channelOFCTimeOffset);
301 tree->Branch ("cluster_channel_ADC2MeV0",&m_c_channelADC2MEV0);
302 tree->Branch ("cluster_channel_ADC2MeV1",&m_c_channelADC2MEV1);
303 tree->Branch ("cluster_channel_pedestal",&m_c_channelPed);
304 tree->Branch ("cluster_channel_OFCa",&m_c_channelOFCa);
305 tree->Branch ("cluster_channel_OFCb",&m_c_channelOFCb);
306 tree->Branch ("cluster_channel_MinBiasAvg",&m_c_channelMinBiasAvg);
307
308 if (!m_isMC){
309 tree->Branch ("cluster_channel_OfflineEnergyRescaler",&m_c_channelOfflEneRescaler);
310 tree->Branch ("cluster_channel_OfflineHVScale",&m_c_channelOfflHVScale);
311 tree->Branch ("cluster_channel_shape",&m_c_channelShape);
312 tree->Branch ("cluster_channel_shapeDer",&m_c_channelShapeDer);
313 }
314 }
315
316 // Cluster raw channel
317 tree->Branch ("cluster_index_rawChLvl",&m_c_clusterIndex_rawChLvl);
318 tree->Branch ("cluster_rawChannel_index",&m_c_clusterRawChannelIndex);
319 tree->Branch ("cluster_rawChannel_id",&m_c_rawChannelIdMap);
320 tree->Branch ("cluster_rawChannel_amplitude",&m_c_rawChannelAmplitude);
321 tree->Branch ("cluster_rawChannel_time",&m_c_rawChannelTime);
322 tree->Branch ("cluster_rawChannel_layer",&m_c_rawChannelLayer);
323 tree->Branch ("cluster_rawChannel_Ped",&m_c_rawChannelPed);
324 tree->Branch ("cluster_rawChannel_Prov",&m_c_rawChannelProv);
325 tree->Branch ("cluster_rawChannel_qual",&m_c_rawChannelQuality);
326 tree->Branch ("cluster_rawChannel_chInfo",&m_c_rawChannelChInfo); // tree->Branch ("cluster_cell_caloGain",&c_cellGain); //modify
327 if (!m_isMC){
328 tree->Branch ("cluster_rawChannel_DSPThreshold",&m_c_rawChannelDSPThreshold);
329 }
330
331 // ## Cluster EMB2 7_11
333 tree->Branch ("cluster711_index",&m_c711_clusterIndex);
334 tree->Branch ("c711_electronIndex_clusterLvl",&m_c711_electronIndex_clusterLvl);
335 tree->Branch ("cluster711_et",&m_c711_clusterEnergy);
336 tree->Branch ("cluster711_pt",&m_c711_clusterPt);
337 tree->Branch ("cluster711_time",&m_c711_clusterTime);
338 tree->Branch ("cluster711_eta",&m_c711_clusterEta);
339 tree->Branch ("cluster711_phi",&m_c711_clusterPhi);
340 // Cluster cell
341 tree->Branch ("cluster711_index_cellLvl",&m_c711_clusterIndex_cellLvl);
342 tree->Branch ("cluster711_cell_index",&m_c711_clusterCellIndex);
343 tree->Branch ("cluster711_cell_caloGain",&m_c711_cellGain);
344 tree->Branch ("cluster711_cell_layer",&m_c711_cellLayer);
345 tree->Branch ("cluster711_cell_region",&m_c711_cellRegion);
346 tree->Branch ("cluster711_cell_energy",&m_c711_cellEnergy);
347 tree->Branch ("cluster711_cell_time",&m_c711_cellTime);
348 tree->Branch ("cluster711_cell_eta",&m_c711_cellEta);
349 tree->Branch ("cluster711_cell_phi",&m_c711_cellPhi);
350 tree->Branch ("cluster711_cell_deta",&m_c711_cellDEta);
351 tree->Branch ("cluster711_cell_dphi",&m_c711_cellDPhi);
352 tree->Branch ("cluster711_cellsDist_dphi",&m_c711_cellToClusterDPhi);
353 tree->Branch ("cluster711_cellsDist_deta",&m_c711_cellToClusterDEta);
354 // Cluster channel (digits and cell ch)
355 tree->Branch ("cluster711_index_chLvl",&m_c711_clusterIndex_chLvl);
356 tree->Branch ("cluster711_channel_index",&m_c711_clusterChannelIndex);
357 tree->Branch ("cluster711_channel_digits",&m_c711_channelDigits);
358 tree->Branch ("cluster711_channel_energy",&m_c711_channelEnergy);
359 tree->Branch ("cluster711_channel_time",&m_c711_channelTime);
360 tree->Branch ("cluster711_channel_layer", &m_c711_channelLayer);
361 if (!m_noBadCells) tree->Branch ("cluster711_channel_bad",&m_c711_channelBad);
362 tree->Branch ("cluster711_channel_chInfo", &m_c711_channelChInfo);
363 tree->Branch ("cluster711_channel_hash",&m_c711_channelHashMap);
364 tree->Branch ("cluster711_channel_id",&m_c711_channelChannelIdMap);
366 tree->Branch ("cluster711_channel_effSigma",&m_c711_channelEffectiveSigma);
367 tree->Branch ("cluster711_channel_noise",&m_c711_channelNoise);
368 tree->Branch ("cluster711_channel_DSPThreshold",&m_c711_channelDSPThreshold);
369 tree->Branch ("cluster711_channel_OFCTimeOffset",&m_c711_channelOFCTimeOffset);
370 tree->Branch ("cluster711_channel_ADC2MeV0",&m_c711_channelADC2MEV0);
371 tree->Branch ("cluster711_channel_ADC2MeV1",&m_c711_channelADC2MEV1);
372 tree->Branch ("cluster711_channel_pedestal",&m_c711_channelPed);
373 tree->Branch ("cluster711_channel_OFCa",&m_c711_channelOFCa);
374 tree->Branch ("cluster711_channel_OFCb",&m_c711_channelOFCb);
375 tree->Branch ("cluster711_channel_MinBiasAvg",&m_c711_channelMinBiasAvg);
376
377 if (!m_isMC){
378 tree->Branch ("cluster711_channel_OfflineEnergyRescaler",&m_c711_channelOfflEneRescaler);
379 tree->Branch ("cluster711_channel_OfflineHVScale",&m_c711_channelOfflHVScale);
380 tree->Branch ("cluster711_channel_shape",&m_c711_channelShape);
381 tree->Branch ("cluster711_channel_shapeDer",&m_c711_channelShapeDer);
382 }
383 }
384 // Cluster raw channel
385 tree->Branch ("cluster711_index_rawChLvl",&m_c711_clusterIndex_rawChLvl);
386 tree->Branch ("cluster711_rawChannel_index",&m_c711_clusterRawChannelIndex);
387 tree->Branch ("cluster711_rawChannel_id",&m_c711_rawChannelIdMap);
388 tree->Branch ("cluster711_rawChannel_amplitude",&m_c711_rawChannelAmplitude);
389 tree->Branch ("cluster711_rawChannel_time",&m_c711_rawChannelTime);
390 tree->Branch ("cluster711_rawChannel_layer",&m_c711_rawChannelLayer);
391 tree->Branch ("cluster711_rawChannel_Ped",&m_c711_rawChannelPed);
392 tree->Branch ("cluster711_rawChannel_Prov",&m_c711_rawChannelProv);
393 tree->Branch ("cluster711_rawChannel_qual",&m_c711_rawChannelQuality);
394 tree->Branch ("cluster711_rawChannel_chInfo",&m_c711_rawChannelChInfo);
395 if (!m_isMC){
396 tree->Branch ("cluster711_rawChannel_DSPThreshold",&m_c711_rawChannelDSPThreshold);
397 }
398 }
399 // #############
400
401 // ## Particle Truth ##
402 if (m_isMC){
404 tree->Branch("hits_sampling", &m_hits_sampling);
405 tree->Branch("hits_clusterIndex_chLvl", &m_hits_clusterIndex_chLvl);
406 tree->Branch("hits_clusterChannelIndex", &m_hits_clusterChannelIndex);
407 tree->Branch("hits_hash", &m_hits_hash);
408 tree->Branch("hits_energy", &m_hits_energy);
409 tree->Branch("hits_time", &m_hits_time);
410 tree->Branch("hits_sampFrac", &m_hits_sampFrac);
411 tree->Branch("hits_energyConv", &m_hits_energyConv);
412 tree->Branch("hits_cellEta", &m_hits_cellEta);
413 tree->Branch("hits_cellPhi", &m_hits_cellPhi);
414 }
415
417 tree->Branch("mc_part_energy",&m_mc_part_energy);
418 tree->Branch("mc_part_pt",&m_mc_part_pt);
419 tree->Branch("mc_part_m",&m_mc_part_m);
420 tree->Branch("mc_part_eta",&m_mc_part_eta);
421 tree->Branch("mc_part_phi",&m_mc_part_phi);
422 tree->Branch("mc_part_pdgId",&m_mc_part_pdgId);
423 tree->Branch("mc_part_status", &m_mc_part_status);
424 tree->Branch("mc_part_barcode", &m_mc_part_uniqueID); // TODO Rename variable name to be consistent?
425 }
426 // ## Vertex Truth ##
428 tree->Branch("mc_vert_x", &m_mc_vert_x);
429 tree->Branch("mc_vert_y", &m_mc_vert_y);
430 tree->Branch("mc_vert_z", &m_mc_vert_z);
431 tree->Branch("mc_vert_time", &m_mc_vert_time);
432 tree->Branch("mc_vert_perp", &m_mc_vert_perp);
433 tree->Branch("mc_vert_eta", &m_mc_vert_eta);
434 tree->Branch("mc_vert_phi", &m_mc_vert_phi);
435 tree->Branch("mc_vert_barcode", &m_mc_vert_uniqueID); // TODO Rename variable name to be consistent?
436 tree->Branch("mc_vert_status", &m_mc_vert_status);
437 }
438 }
439
440 // ## Photons ##
441 if (m_doPhotonDump){
442 tree->Branch("ph_energy",&m_ph_energy);
443 tree->Branch("ph_pt",&m_ph_pt);
444 tree->Branch("ph_eta",&m_ph_eta);
445 tree->Branch("ph_phi",&m_ph_phi);
446 tree->Branch("ph_m",&m_ph_m);
447 }
448 // ## Primary Vertex
449 tree->Branch("vtx_x",&m_vtx_x);
450 tree->Branch("vtx_y",&m_vtx_y);
451 tree->Branch("vtx_z",&m_vtx_z);
452 tree->Branch("vtx_deltaZ0",&m_vtx_deltaZ0);
453 tree->Branch("vtx_delta_z0_sin",&m_vtx_delta_z0_sin);
454 tree->Branch("vtx_d0sig",&m_vtx_d0sig);
455
456 // ## Electrons ##
457 tree->Branch("el_index",&m_el_index);
458 tree->Branch("el_Pt",&m_el_Pt);
459 tree->Branch("el_et",&m_el_et);
460 tree->Branch("el_Eta",&m_el_Eta);
461 tree->Branch("el_Phi",&m_el_Phi);
462 tree->Branch("el_m",&m_el_m);
463 tree->Branch("el_eoverp",&m_el_eoverp);
464 tree->Branch("el_f1",&m_el_f1);
465 tree->Branch("el_f3",&m_el_f3);
466 tree->Branch("el_eratio",&m_el_eratio);
467 tree->Branch("el_weta1",&m_el_weta1);
468 tree->Branch("el_weta2",&m_el_weta2);
469 tree->Branch("el_fracs1",&m_el_fracs1);
470 tree->Branch("el_wtots1",&m_el_wtots1);
471 tree->Branch("el_e277",&m_el_e277);
472 tree->Branch("el_reta",&m_el_reta);
473 tree->Branch("el_rphi",&m_el_rphi);
474 tree->Branch("el_deltae",&m_el_deltae);
475 tree->Branch("el_rhad",&m_el_rhad);
476 tree->Branch("el_rhad1",&m_el_rhad1);
477
478 // ## Tag and Probe ##
479 // zee
481 tree->Branch("zee_M", &m_zee_M);
482 tree->Branch("zee_E", &m_zee_E);
483 tree->Branch("zee_pt", &m_zee_pt);
484 tree->Branch("zee_px", &m_zee_px);
485 tree->Branch("zee_py", &m_zee_py);
486 tree->Branch("zee_pz", &m_zee_pz);
487 tree->Branch("zee_T", &m_zee_T);
488 tree->Branch("zee_deltaR", &m_zee_deltaR);
489 }
490}
std::vector< float > * m_vtx_x
Gaudi::Property< bool > m_doTruthEventDump
std::vector< std::vector< double > > * m_c_channelShape
std::vector< float > * m_el_deltae
std::vector< float > * m_c_channelPed
Gaudi::Property< bool > m_doAssocTopoCluster711Dump
std::vector< int > * m_c_clusterIndex_rawChLvl
std::vector< double > * m_c_clusterEnergy
unsigned long long m_e_eventNumber
std::vector< double > * m_c711_cellEnergy
std::vector< float > * m_c_rawChannelQuality
std::vector< int > * m_c711_cellRegion
std::vector< float > * m_el_fracs1
std::vector< double > * m_c711_channelTime
std::vector< int > * m_c_cellRegion
std::vector< unsigned int > * m_c_channelChannelIdMap
std::vector< float > * m_ph_energy
std::vector< double > * m_zee_py
std::vector< float > * m_el_wtots1
std::vector< double > * m_hits_cellPhi
std::vector< int > * m_c711_cellLayer
std::vector< double > * m_c711_cellToClusterDEta
std::vector< float > * m_el_Phi
std::vector< std::vector< double > > * m_c_channelShapeDer
Gaudi::Property< bool > m_doLArEMBHitsDump
std::vector< int > * m_c_clusterChannelIndex
std::vector< double > * m_zee_px
std::vector< float > * m_ph_eta
std::vector< double > * m_zee_deltaR
std::vector< int > * m_c711_clusterCellIndex
std::vector< bool > * m_c_channelBad
std::vector< int > * m_c711_rawChannelLayer
std::vector< float > * m_c711_channelOfflHVScale
std::vector< double > * m_hits_energyConv
std::vector< double > * m_c_cellTime
std::vector< float > * m_c711_rawChannelAmplitude
std::vector< int > * m_c711_clusterIndex
std::vector< float > * m_c_rawChannelProv
std::vector< float > * m_el_e277
std::vector< int > * m_c711_cellGain
std::vector< float > * m_el_rhad
std::vector< double > * m_c711_clusterTime
std::vector< float > * m_c711_rawChannelQuality
std::vector< double > * m_vtx_d0sig
std::vector< int > * m_mc_vert_status
std::vector< std::vector< double > > * m_c_channelOFCb
std::vector< int > * m_c711_clusterIndex_rawChLvl
std::vector< float > * m_mc_vert_phi
std::vector< std::vector< double > > * m_c_channelOFCa
std::vector< int > * m_mc_part_pdgId
std::vector< float > * m_c711_clusterRawChannelIndex
std::vector< float > * m_c_rawChannelAmplitude
std::vector< float > * m_mc_vert_z
std::vector< float > * m_c711_rawChannelPed
std::vector< double > * m_c_cellPhi
std::vector< int > * m_c711_electronIndex_clusterLvl
std::vector< float > * m_vtx_delta_z0_sin
std::vector< double > * m_c_cellEnergy
std::vector< std::vector< float > > * m_c711_channelDigits
std::vector< double > * m_c711_channelOFCTimeOffset
std::vector< int > * m_c_clusterIndex_chLvl
std::vector< float > * m_mc_vert_y
std::vector< double > * m_zee_pt
std::vector< float > * m_hits_sampFrac
std::vector< int > * m_c_cellLayer
std::vector< double > * m_c_clusterPt
std::vector< float > * m_c_rawChannelPed
std::vector< float > * m_mc_part_pt
std::vector< int > * m_c_clusterIndex
std::vector< double > * m_c_cellToClusterDPhi
std::vector< float > * m_c_channelNoise
std::vector< int > * m_hits_clusterChannelIndex
std::vector< float > * m_c711_channelPed
std::vector< double > * m_c711_clusterEta
std::vector< float > * m_el_f1
std::vector< float > * m_c_clusterRawChannelIndex
std::vector< float > * m_el_Pt
std::vector< float > * m_c711_channelEffectiveSigma
std::vector< int > * m_c_clusterCellIndex
std::vector< float > * m_ph_pt
std::vector< float > * m_c_channelEffectiveSigma
std::vector< unsigned int > * m_c_channelHashMap
std::vector< int > * m_c711_clusterChannelIndex
std::vector< int > * m_c_rawChannelLayer
std::vector< double > * m_c711_cellDPhi
std::vector< int > * m_c711_channelLayer
std::vector< std::vector< float > > * m_c_channelDigits
std::vector< double > * m_c_cellEta
std::vector< double > * m_c_cellDEta
std::vector< float > * m_c711_channelMinBiasAvg
std::vector< float > * m_c711_rawChannelTime
std::vector< double > * m_c711_cellTime
std::vector< std::vector< double > > * m_c711_channelShapeDer
std::vector< float > * m_ph_phi
std::vector< double > * m_hits_cellEta
Gaudi::Property< bool > m_doTruthPartDump
std::vector< float > * m_c_channelOfflEneRescaler
std::vector< double > * m_zee_M
std::vector< float > * m_c711_channelDSPThreshold
std::vector< double > * m_zee_pz
std::vector< double > * m_c711_clusterPhi
std::vector< std::vector< int > > * m_c711_rawChannelChInfo
std::vector< double > * m_c_cellDPhi
std::vector< float > * m_el_rhad1
std::vector< float > * m_el_weta1
std::vector< bool > * m_c711_channelBad
std::vector< float > * m_el_et
std::vector< double > * m_c711_clusterPt
std::vector< std::vector< int > > * m_c711_channelChInfo
std::vector< float > * m_vtx_z
std::vector< int > * m_c_channelLayer
std::vector< double > * m_zee_T
std::vector< int > * m_c711_clusterIndex_cellLvl
std::vector< double > * m_c_clusterPhi
std::vector< double > * m_c711_clusterEnergy
std::vector< int > * m_el_index
std::vector< std::vector< int > > * m_c_rawChannelChInfo
std::vector< double > * m_c711_cellPhi
std::vector< double > * m_c711_cellEta
std::vector< int > * m_mc_part_status
Gaudi::Property< bool > m_doTagAndProbe
std::vector< std::vector< double > > * m_c711_channelOFCa
Gaudi::Property< bool > m_isMC
std::vector< int > * m_mc_vert_uniqueID
std::vector< double > * m_hits_energy
std::vector< float > * m_c_channelADC2MEV1
std::vector< float > * m_mc_part_eta
std::vector< float > * m_mc_part_energy
std::vector< std::vector< double > > * m_c711_channelShape
std::vector< float > * m_el_Eta
std::vector< float > * m_c_channelOfflHVScale
std::vector< double > * m_c_channelTime
std::vector< double > * m_c711_cellDEta
Gaudi::Property< bool > m_getLArCalibConstants
std::vector< int > * m_c_clusterIndex_cellLvl
std::vector< double > * m_c_clusterTime
std::vector< float > * m_c_channelMinBiasAvg
std::vector< float > * m_mc_vert_time
std::vector< int > * m_c711_clusterIndex_chLvl
std::vector< float > * m_c_channelDSPThreshold
std::vector< float > * m_c711_channelNoise
std::vector< double > * m_c_clusterEta
std::vector< int > * m_c_cellGain
std::vector< float > * m_mc_part_phi
std::vector< double > * m_c711_channelEnergy
std::vector< float > * m_c_channelADC2MEV0
std::vector< int > * m_c_electronIndex_clusterLvl
std::vector< float > * m_mc_part_m
std::vector< double > * m_zee_E
std::vector< std::vector< double > > * m_c711_channelOFCb
std::vector< float > * m_mc_vert_x
std::vector< float > * m_c711_channelADC2MEV0
std::vector< float > * m_c711_channelOfflEneRescaler
std::vector< float > * m_vtx_deltaZ0
std::vector< double > * m_c711_cellToClusterDPhi
std::vector< int > * m_hits_sampling
std::vector< std::vector< int > > * m_c_channelChInfo
std::vector< float > * m_c_rawChannelDSPThreshold
std::vector< float > * m_vtx_y
std::vector< double > * m_c_channelEnergy
std::vector< float > * m_el_rphi
Gaudi::Property< bool > m_doElecSelectByTrackOnly
Gaudi::Property< bool > m_doPhotonDump
std::vector< double > * m_c_channelOFCTimeOffset
std::vector< unsigned int > * m_c711_rawChannelIdMap
std::vector< float > * m_el_eratio
std::vector< unsigned int > * m_hits_hash
std::vector< float > * m_c_rawChannelTime
Gaudi::Property< bool > m_noBadCells
std::vector< float > * m_ph_m
std::vector< float > * m_c711_rawChannelDSPThreshold
std::vector< float > * m_mc_vert_eta
std::vector< float > * m_c711_rawChannelProv
std::vector< int > * m_mc_part_uniqueID
std::vector< float > * m_el_f3
std::vector< float > * m_el_reta
std::vector< unsigned int > * m_c711_channelChannelIdMap
std::vector< int > * m_hits_clusterIndex_chLvl
std::vector< float > * m_mc_vert_perp
std::vector< float > * m_c711_channelADC2MEV1
std::vector< float > * m_el_weta2
std::vector< float > * m_el_eoverp
std::vector< float > * m_el_m
std::vector< double > * m_c_cellToClusterDEta
std::vector< unsigned int > * m_c_rawChannelIdMap
std::vector< double > * m_hits_time
std::vector< unsigned int > * m_c711_channelHashMap
TChain * tree

◆ bookDatabaseBranches()

void EventReaderBaseAlg::bookDatabaseBranches ( TTree * tree)
protectedinherited

Definition at line 237 of file EventReaderBaseAlg.cxx.

237 {
238 // ## BCID/Luminosity vector
239 tree->Branch ("lb_lumiblock",&m_lb_lumiblock);
240 if (!m_isMC){
241 tree->Branch ("lb_bcidLuminosity",&m_lb_bcidLuminosity);
242 }
243}
std::vector< std::vector< float > > * m_lb_bcidLuminosity
std::vector< int > * m_lb_lumiblock

◆ clear()

void EventReaderBaseAlg::clear ( )
protectedinherited

Definition at line 492 of file EventReaderBaseAlg.cxx.

492 {
493 // ## Event info
494 m_e_runNumber = 9999;
495 m_e_eventNumber = 9999;
496 m_e_bcid = 9999;
497 m_e_lumiBlock = 999;
498 m_e_inTimePileup = -999;
499 m_e_outOfTimePileUp = -999;
500 // ############
501
502 ATH_MSG_DEBUG("Clear Clusters..");
503 // ## Cluster (TOPOCLUSTER or SUPERCLUSTER)
505 m_c_clusterIndex->clear();
507 m_c_clusterEnergy->clear();
508 m_c_clusterTime->clear();
509 m_c_clusterPt->clear();
510 m_c_clusterEta->clear();
511 m_c_clusterPhi->clear();
512 // Cluster cell
513 ATH_MSG_DEBUG("Clear Clusters cell..");
516 m_c_clusterCellIndex->clear();
517 m_c_cellGain->clear();
518 m_c_cellLayer->clear();
519 m_c_cellRegion->clear();
520 m_c_cellEnergy->clear();
521 m_c_cellTime->clear();
522 m_c_cellEta->clear();
523 m_c_cellPhi->clear();
524 m_c_cellDEta->clear();
525 m_c_cellDPhi->clear();
526 m_c_cellToClusterDPhi->clear();
527 m_c_cellToClusterDEta->clear();
528 // Cluster channel
529 ATH_MSG_DEBUG("Clear Clusters channel..");
530 m_c_clusterIndex_chLvl->clear();
532 m_c_channelHashMap->clear(); //
534 m_c_channelDigits->clear();
535 m_c_channelEnergy->clear();
536 m_c_channelTime->clear();
537 m_c_channelLayer->clear();
538 if (!m_noBadCells) m_c_channelBad->clear();
539 m_c_channelChInfo->clear();
541 ATH_MSG_DEBUG("Clear calib. constants..");
543 m_c_channelNoise->clear();
546 m_c_channelADC2MEV0->clear();
547 m_c_channelADC2MEV1->clear();
548 m_c_channelPed->clear();
549 m_c_channelOFCa->clear();
550 m_c_channelOFCb->clear();
551 m_c_channelMinBiasAvg->clear();
552 if (!m_isMC){
554 m_c_channelOfflHVScale->clear();
555 m_c_channelShapeDer->clear();
556 m_c_channelShape->clear();
557 }
558 }
559 // Cluster raw channel
560 ATH_MSG_DEBUG("Clear Clusters rawch..");
561 m_c_rawChannelIdMap->clear();
562 m_c_rawChannelChInfo->clear();
564 m_c_rawChannelTime->clear();
565 m_c_rawChannelLayer->clear();
566 m_c_rawChannelPed->clear();// raw channel estimated pedestal
567 m_c_rawChannelProv->clear();// raw channel LAr provenance (tile masked)
568 m_c_rawChannelQuality->clear();
571 if (!m_isMC){
573 }
574 // ############
575
576 // ## Cluster EMB2_711
579 m_c711_clusterIndex->clear();
581 m_c711_clusterEnergy->clear();
582 m_c711_clusterPt->clear();
583 m_c711_clusterTime->clear();
584 m_c711_clusterEta->clear();
585 m_c711_clusterPhi->clear();
586 // Cluster cell
587 ATH_MSG_DEBUG("Clear Clusters 7x11 cell..");
591 m_c711_cellGain->clear();
592 m_c711_cellLayer->clear();
593 m_c711_cellRegion->clear();
594 m_c711_cellEnergy->clear();
595 m_c711_cellTime->clear();
596 m_c711_cellEta->clear();
597 m_c711_cellPhi->clear();
598 m_c711_cellDEta->clear();
599 m_c711_cellDPhi->clear();
601 m_c711_cellToClusterDEta->clear();
602 // Cluster channel
603 ATH_MSG_DEBUG("Clear Clusters 7x11 channel..");
606 m_c711_channelHashMap->clear(); //
608 m_c711_channelDigits->clear();
609 m_c711_channelEnergy->clear();
610 m_c711_channelTime->clear();
611 m_c711_channelLayer->clear();
612 if (!m_noBadCells) m_c711_channelBad->clear();
613 m_c711_channelChInfo->clear();
616 m_c711_channelNoise->clear();
619 m_c711_channelADC2MEV0->clear();
620 m_c711_channelADC2MEV1->clear();
621 m_c711_channelPed->clear();
622 m_c711_channelOFCa->clear();
623 m_c711_channelOFCb->clear();
624 m_c711_channelMinBiasAvg->clear();
625 if (!m_isMC){
628 m_c711_channelShapeDer->clear();
629 m_c711_channelShape->clear();
630 }
631 }
632 // Cluster raw channel
633 ATH_MSG_DEBUG("Clear Clusters 7x11 rawch..");
634 m_c711_rawChannelIdMap->clear();
637 m_c711_rawChannelTime->clear();
638 m_c711_rawChannelLayer->clear();
639 m_c711_rawChannelPed->clear();// raw channel estimated pedestal
640 m_c711_rawChannelProv->clear();// raw channel LAr provenance (tile masked)
644 if (!m_isMC){
646 }
647}
648
649 // ## Particle Truth ##
650 if (m_isMC){
652 m_hits_sampling->clear();
655 m_hits_hash->clear();
656 m_hits_energy->clear();
657 m_hits_time->clear();
658 m_hits_sampFrac->clear();
659 m_hits_energyConv->clear();
660 m_hits_cellEta->clear();
661 m_hits_cellPhi->clear();
662 }
663
665 ATH_MSG_DEBUG("particle truth..");
666 m_mc_part_energy->clear();
667 m_mc_part_pt->clear();
668 m_mc_part_m->clear();
669 m_mc_part_eta->clear();
670 m_mc_part_phi->clear();
671 m_mc_part_pdgId->clear();
672 m_mc_part_status->clear();
673 m_mc_part_uniqueID->clear();
674 }
675 // ## Vertex Truth ##
677 m_mc_vert_x->clear();
678 m_mc_vert_y->clear();
679 m_mc_vert_z->clear();
680 m_mc_vert_time->clear();
681 m_mc_vert_perp->clear();
682 m_mc_vert_eta->clear();
683 m_mc_vert_phi->clear();
684 m_mc_vert_uniqueID->clear();
685 m_mc_vert_status->clear();
686 }
687 }
688 // ## Photons ##
689 if (m_doPhotonDump){
690 ATH_MSG_DEBUG("Clear Photons");
691 m_ph_energy->clear();
692 m_ph_eta->clear();
693 m_ph_phi->clear();
694 m_ph_pt->clear();
695 m_ph_m->clear();
696 }
697
698 ATH_MSG_DEBUG("Clear: Vertexes");
699 m_vtx_x->clear();
700 m_vtx_y->clear();
701 m_vtx_z->clear();
702 m_vtx_deltaZ0->clear();
703 m_vtx_delta_z0_sin->clear();
704 m_vtx_d0sig->clear();
705
706 // ## Electrons ##
707 ATH_MSG_DEBUG("Clear: Electrons");
708 m_el_index->clear();
709 m_el_Pt->clear();
710 m_el_et->clear();
711 m_el_Eta->clear();
712 m_el_Phi->clear();
713 m_el_m->clear();
714 m_el_eoverp->clear();
715
716 // offline shower shapes
717 m_el_f1->clear();
718 m_el_f3->clear();
719 m_el_eratio->clear();
720 m_el_weta1->clear();
721 m_el_weta2->clear();
722 m_el_fracs1->clear();
723 m_el_wtots1->clear();
724 m_el_e277->clear();
725 m_el_reta->clear();
726 m_el_rphi->clear();
727 m_el_deltae->clear();
728 m_el_rhad->clear();
729 m_el_rhad1->clear();
730
731 // ## Tag and Probe ##
732 //zee
734 ATH_MSG_DEBUG("Clear: T&P");
735 m_zee_M->clear();
736 m_zee_E->clear();
737 m_zee_pt->clear();
738 m_zee_px->clear();
739 m_zee_py->clear();
740 m_zee_pz->clear();
741 m_zee_T->clear();
742 m_zee_deltaR->clear();
743 }
744}
#define ATH_MSG_DEBUG(x)

◆ clearLBData()

void EventReaderBaseAlg::clearLBData ( )
protectedinherited

Definition at line 245 of file EventReaderBaseAlg.cxx.

245 {
246 m_lb_lumiblock->clear();
247 if (!m_isMC){
248 m_lb_bcidLuminosity->clear();
249 }
250}

◆ declareGaudiProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::declareGaudiProperty ( Gaudi::Property< T, V, H > & hndl,
const SG::VarHandleKeyType &  )
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158 {
160 hndl.value(),
161 hndl.documentation());
162
163 }
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)

◆ declareProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::declareProperty ( Gaudi::Property< T, V, H > & t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145 {
146 typedef typename SG::HandleClassifier<T>::type htype;
148 }
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>

◆ deltaPhi()

double EventReaderBaseAlg::deltaPhi ( double phi1,
double phi2 )
protectedinherited

Definition at line 224 of file EventReaderBaseAlg.cxx.

224 {
225 // Fix phi value for delta_phi calculation, to -pi,+pi interval.
226 double deltaPhi = fixPhi(phi1) - fixPhi(phi2);
227 return fixPhi(deltaPhi);
228}
double deltaPhi(double phi1, double phi2)
double fixPhi(double phi)

◆ deltaR()

double EventReaderBaseAlg::deltaR ( double eta,
double phi )
protectedinherited

Definition at line 230 of file EventReaderBaseAlg.cxx.

230 {
231 return sqrt( deta*deta + fixPhi(dphi)*fixPhi(dphi) );
232}

◆ detStore()

const ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

◆ dumpClusterCells()

StatusCode EventReaderAlg::dumpClusterCells ( const xAOD::CaloCluster * cl,
int clusIndex,
const EventContext & ctx )
privatevirtual

Definition at line 545 of file EventReaderAlg.cxx.

545 {
546
547 SG::ReadHandle<LArDigitContainer> LarDigCnt = SG::makeHandle(m_larDigitCntSgKey,ctx);
548 if(!LarDigCnt.isValid()) ATH_MSG_ERROR("LArDigitContainer is not a valid container!");
549 SG::ReadHandle<LArRawChannelContainer> LArRawCnt = SG::makeHandle(m_larRawChCntSgKey,ctx);
550 if(!LArRawCnt.isValid()) ATH_MSG_ERROR("LArRawChannelContainer is not a valid container!");
551
552 // calorimeter level
553 std::bitset<200000> larClusteredDigits;
554 std::vector<size_t> caloHashMap;
555 std::vector<HWIdentifier> channelHwidInClusterMap; //unique for any readout in the ATLAS
556 std::vector<int> cellIndexMap;
557 std::vector<float> channelIndexMap;
558 std::vector<int> cellLayerMap;
559 // cell level
560 std::vector<double> clusCellEtaMap;//unused
561 std::vector<double> clusCellPhiMap; //unused
562 // channel level
563 std::vector<double> channelEnergyInClusterMap;
564 std::vector<double> channelTimeInClusterMap;
565 std::vector<double> channelEtaInClusterMap;
566 std::vector<double> channelPhiInClusterMap;
567 std::vector<float> channelEffectiveSigmaClusterMap;
568 std::vector<float> channelNoiseClusterMap;
569
570 std::vector<int> channelCaloRegionMap;
571 std::vector<bool> badChannelMap;
572
573 // cluster
574 double clusEta = cl->eta();
575 double clusPhi = cl->phi();
576 double clusEt = cl->et();
577 double clusPt = cl->pt();
578 double clusTime = cl->time();
579
580 ATH_MSG_DEBUG (" (Cluster) Cluster: "<< clusIndex <<", numberCells: " << cl->numberCells() << ", e = " << cl->e() << ", time = "<< clusTime << ", pt = " << cl->pt() << " , eta = " << cl->eta() << " , phi = " << cl->phi());
581
582 // loop over cells in cluster
583 auto itrCellsBegin = cl->cell_begin();
584 auto itrCellsEnd = cl->cell_end();
585 int cellNum = 0; //cell number just for printing out
586
587 for (auto itCells=itrCellsBegin; itCells != itrCellsEnd; ++itCells){
588 const CaloCell* cell = (*itCells); //get the caloCells
589 if (cell){ // check for empty clusters
590 Identifier cellId = cell->ID();
591
592 int caloRegionIndex = getCaloRegionIndex(cell); // custom caloRegionIndex based on caloDDE
593
594 double eneCell = cell->energy();
595 double timeCell = cell->time();
596 double etaCell = cell->eta();
597 double phiCell = cell->phi();
598 int gainCell = cell->gain(); // CaloGain type
599 int layerCell = m_calocell_id->calo_sample(cell->ID());
600 bool badCell = cell->badcell(); // applied to LAR channels. For Tile, we use TileCell* tCell->badch1() or 2.
601 bool isTile = cell->caloDDE()->is_tile();
602 bool isLAr = cell->caloDDE()->is_lar_em();
603 bool isLArFwd = cell->caloDDE()->is_lar_fcal();
604 bool isLArHEC = cell->caloDDE()->is_lar_hec();
605 double detaCell = cell->caloDDE()->deta(); //delta eta - granularity
606 double dphiCell = cell->caloDDE()->dphi(); //delta phi - granularity
607 float effSigma = m_noiseCDO->getEffectiveSigma(cell->ID(), cell->gain(), cell->energy()); // effective sigma of cell related to its noise.
608 float cellNoise = m_noiseCDO->getNoise(cell->ID(), cell->gain()); // cell noise value
609
610 IdentifierHash chidHash;
611 HWIdentifier chhwid;
612 size_t index;
613
614 // ========= TileCal ==========
615 if (isTile) continue;
616
617 // ========= LAr ==========
618 else if ((isLAr) || (isLArFwd) || (isLArHEC)) { //LAr
619 chhwid = m_larCabling->createSignalChannelID(cellId);
620 chidHash = m_onlineLArID->channel_Hash(chhwid);
621 index = (size_t) (chidHash);
622
623 if (larClusteredDigits.test(index)) {
624 ATH_MSG_ERROR (" ##### (Cluster) Error LAr: Conflict index position in Channel map. Position was already filled in this event. Skipping the cell of index: " << index << " and hwid: " << chhwid << ". Cell_E/t="<<cell->energy() << "/"<< cell->time() << ". Eta/Phi: "<< cell->eta() << "/" << cell->phi());
625 continue;
626 }
627 if (badCell && m_noBadCells){
628 ATH_MSG_INFO (" (Cluster)(LAr) Cell "<< cellNum <<" in cluster is a bad LAr channel! Skipping the cell.");
629 continue;
630 }
631 larClusteredDigits.set(index);
632 caloHashMap.push_back(index);
633 cellIndexMap.push_back(m_c_cellIndexCounter);
634 clusCellEtaMap.push_back(etaCell);
635 clusCellPhiMap.push_back(phiCell);
636 cellLayerMap.push_back(layerCell);
637 channelIndexMap.push_back( m_c_cellIndexCounter );
638 channelHwidInClusterMap.push_back(chhwid);
639 channelTimeInClusterMap.push_back(timeCell);
640 channelEnergyInClusterMap.push_back(eneCell);
641 channelCaloRegionMap.push_back(caloRegionIndex);
642 channelEffectiveSigmaClusterMap.push_back(effSigma);
643 channelNoiseClusterMap.push_back(cellNoise);
644 if (!m_noBadCells) badChannelMap.push_back(badCell);
645
646 if (m_printCellsClus){ //optional to help debugging
647 ATH_MSG_INFO (" (Cluster) in IsLAr: Cell (layer) "<< cellNum << " (" << layerCell <<") ID: " << cellId << "). HwId (B_EC/P_N/FeedTr/slot/ch) " << chhwid << " (" << m_onlineLArID->barrel_ec(chhwid) << "/" << m_onlineLArID->pos_neg(chhwid) << "/"<< m_onlineLArID->feedthrough(chhwid) << "/" << m_onlineLArID->slot(chhwid) << "/" << m_onlineLArID->channel(chhwid) << ") . Index: " << index << ". ene " << eneCell << ". time " << timeCell << ". D_eta: " << detaCell << ". D_phi: " << dphiCell << " ):" << ". Eta/Phi: "<< cell->eta() << "/" << cell->phi());
648 }
649 } //end else LAr
650
651 else {
652 ATH_MSG_ERROR (" ####### (Cluster) ERROR ! No CaloCell region was found!");
653 continue;
654 }
655
656 // ##############################
657 // CELL INFO DUMP (CLUSTER)
658 // ##############################
659 const double clusterDphiRaw = clusPhi - phiCell;
660 double cluster_dphi = 0.;
661
662 if (clusterDphiRaw < -pi) {
663 cluster_dphi = twopi + clusterDphiRaw;
664 }
665 else if (clusterDphiRaw > pi) {
666 cluster_dphi = clusterDphiRaw - twopi;
667 }
668 else {
669 cluster_dphi = clusterDphiRaw;
670 }
671
672 m_c_clusterIndex_cellLvl->push_back(clusIndex);
674 m_c_cellGain->push_back(gainCell);
675 m_c_cellLayer->push_back(layerCell);
676 m_c_cellEnergy->push_back(eneCell);
677 m_c_cellTime->push_back(timeCell);
678 m_c_cellEta->push_back(etaCell);
679 m_c_cellPhi->push_back(phiCell);
680 m_c_cellDEta->push_back(detaCell);
681 m_c_cellDPhi->push_back(dphiCell);
682 m_c_cellToClusterDEta->push_back(clusEta - etaCell);
683 m_c_cellToClusterDPhi->push_back(cluster_dphi);
684 m_c_cellRegion->push_back(caloRegionIndex);
685
687 cellNum++;
688 } // end if-cell is empty verification
689 } // end loop at cells inside cluster
690
691 // ##############################
692 // CLUSTER INFO DUMP (CLUSTER)
693 // // ##############################
694 m_c_clusterIndex->push_back(clusIndex);
695 m_c_clusterEnergy->push_back(clusEt);
696 m_c_clusterTime->push_back(clusTime);
697 m_c_clusterEta->push_back(clusEta);
698 m_c_clusterPhi->push_back(clusPhi);
699 m_c_clusterPt->push_back(clusPt);
700
701 // ##############################
702 // DIGITS CHANNEL INFO DUMP (CLUSTER)
703 // ##############################
704 // Loop over ALL channels in LAr Digit Container.
705 // Dump only the channels inside the previous clusters
706
707 // ========= LAr ==========
708 if (larClusteredDigits.any()){
709 // -- LAr_Hits --
711 ATH_MSG_DEBUG (" (Cluster-HITS) Dumping LAr EMB Hits...");
712
713 m_ncell = m_calocell_id->calo_cell_hash_max();
714
715 SG::ReadHandle<LArHitContainer> larHitCnt = SG::makeHandle(m_larEMBHitCntSgKey,ctx);
716 if(!larHitCnt.isValid()) ATH_MSG_ERROR("LAr EMB Hit container is not valid!");
717
718 for (unsigned int k=0 ; k < channelHwidInClusterMap.size() ; k++){
719 double cell_total_ene = 0.0;
720 double cell_total_eneCalib = 0.0;
721 double cell_hit_tof = -999.0;
722 double hit_ene = 0.;
723 double hit_time = 0.;
724 float hit_fSampCalib = 1.;
725 int hit_sampling = 0;
726 size_t hit_index1 = 0;
727 bool thereIsOneHitToDump = false;
728 std::vector<double> hitEnergiesFromMap;
729 std::vector<double> hitTimesFromMap ;
730
731 for (const LArHit* hit : *larHitCnt){
732 Identifier hit_cellID = hit->cellID();
733 HWIdentifier hit_hwid = m_larCabling->createSignalChannelID(hit_cellID);
734 IdentifierHash hit_idHash = m_onlineLArID->channel_Hash(hit_hwid);
735 hit_index1 = (size_t) (hit_idHash);//(m_calocell_id->calo_cell_hash(hit_cellID));
736
737 if (larClusteredDigits.test(hit_index1)){
738 if (channelHwidInClusterMap[k]==hit_hwid){
739
740 hit_ene = hit->energy();
741 hit_time = hit->time();
742 hit_sampling = m_calocell_id->calo_sample(hit_cellID);
743
744 if (hit_index1 < m_ncell && fabs(hit_time) < 25.){ // time < 25 ns (current BC)
745 hitEnergiesFromMap.push_back(hit_ene);
746 hitTimesFromMap.push_back(hit_time);
747 hit_fSampCalib = m_fSampl->FSAMPL(hit_cellID);
748 thereIsOneHitToDump = true;
749
750 ATH_MSG_DEBUG ("(HITS) Match in "<< k <<"/"<< channelHwidInClusterMap.size() <<"! Sampling "<< hit_sampling << ", Cell (clus): "<< channelIndexMap[k] <<" ("<< clusIndex <<"), ID (mapHwid / hwid / hash ): "<< hit_cellID << " ("<< channelHwidInClusterMap[k] << " / "<< hit_hwid << " / "<< hit_index1 <<"), hitEne: "<< hit_ene <<", hitTime: "<< hit_time << ", m_fSampl: "<< hit_fSampCalib <<". eta="<< clusCellEtaMap[k]<< ", phi="<<clusCellPhiMap[k]<<".");
751
752 }// end-if caloHashMap matches
753 }// end-if cluster map has this hit_index
754 }// end-if current bc test
755 }// end-if current bc test
756
757 if (thereIsOneHitToDump){
758 for (auto hitE : hitEnergiesFromMap){
759 cell_total_ene += hitE;
760 cell_total_eneCalib += hitE / hit_fSampCalib; //calib energy from hits
761 }
762 cell_hit_tof = *std::min_element(hitTimesFromMap.begin(), hitTimesFromMap.end());
763
764 m_hits_energy->push_back(cell_total_ene);
765 m_hits_time->push_back(cell_hit_tof);
766 m_hits_sampling->push_back(hit_sampling);
767 m_hits_clusterIndex_chLvl->push_back(clusIndex);
768 m_hits_clusterChannelIndex->push_back(channelIndexMap[k]);
769 m_hits_hash->push_back(hit_index1);
770 m_hits_sampFrac->push_back(hit_fSampCalib);
771 m_hits_energyConv->push_back(cell_total_eneCalib);
772 m_hits_cellEta->push_back(clusCellEtaMap[k]);
773 m_hits_cellPhi->push_back(clusCellPhiMap[k]);
774 }
775 else{
776 ATH_MSG_DEBUG("(HITS) Hit from cell "<< k <<"/"<< channelHwidInClusterMap.size() <<" not found! Sampling "<< hit_sampling << ", Cell (clus): "<< channelIndexMap[k] <<" ("<< clusIndex <<"), mapHwid: "<< channelHwidInClusterMap[k]<<". eta="<< clusCellEtaMap[k]<< ", phi="<<clusCellPhiMap[k]<<".");
777 }
778 hitEnergiesFromMap.clear();
779 hitTimesFromMap.clear();
780
781 }// end for loop over caloHashMaps
782 }// end-if isMC and dumpHits
783
784
785 // -- LAr_Digits --
786 ATH_MSG_DEBUG (" (Cluster) Dumping LAr Digits...");
787
788 for (const LArDigit* dig : *LarDigCnt) {
789 HWIdentifier channelID = dig->channelID();
790 IdentifierHash idHash = m_onlineLArID->channel_Hash(channelID);
791 size_t index = (size_t) (idHash);
792
793 if (larClusteredDigits.test(index)) {
794 for (unsigned int k=0 ; k < channelHwidInClusterMap.size() ; k++){
795 if (channelHwidInClusterMap[k]==channelID){
796
797 // digits
798 std::vector<short> larDigitShort = dig->samples();
799 std::vector<float> larDigit( larDigitShort.begin(), larDigitShort.end() ); // get vector conversion from 'short int' to 'float'
800 m_c_channelDigits->push_back(larDigit);
801
802 const HWIdentifier digId = dig->hardwareID();
803 const int digGain = dig->gain();
804 auto ofc_a = m_ofcs->OFC_a(digId, digGain);
805 auto ofc_b = m_ofcs->OFC_b(digId, digGain);
806
807 std::vector<double> ofca, ofcb, shape, shapeDer;
808 const IdentifierHash& dig_cell_hashId = m_onlineLArID->channel_Hash(channelID);
809 for (size_t k=0; k < ofc_a.size(); k++) ofca.push_back((double) ofc_a[k]);
810 for (size_t k=0; k < ofc_b.size(); k++) ofcb.push_back((double) ofc_b[k]);
811
812 const auto& adc2mev = m_adc2MeVs->ADC2MEV(digId, digGain);
813 const float pedLAr = m_peds->pedestal(digId, digGain);
814 const auto& minBiasLAr = m_minBiasAvgs->minBiasAverage(digId);
815
816 // Remark: Looks like the EC does not have this rescale in DB (?)
817 if (!m_isMC){
818 auto sig_shape = m_shapes->Shape(digId, digGain);
819 auto sig_shapeDer = m_shapes->ShapeDer(digId, digGain);
820 for (size_t k=0; k < sig_shape.size(); k++) shape.push_back((double) sig_shape[k]);
821 for (size_t k=0; k < sig_shapeDer.size(); k++) shapeDer.push_back((double) sig_shapeDer[k]);
822
823 float offl_EneRescaler = 1.0; // if the channel is outside of hash_id limits from DB, set scale to 1.0 (energy remains unchanged).
824 const auto& offl_hv = m_oflHVCorr->HVScaleCorr(digId);
825 if (dig_cell_hashId < m_EneRescaler->getNChans()){ // if the channel is INSIDE the hash_id limit, get the data from DB.
826 offl_EneRescaler = m_EneRescaler->getData(dig_cell_hashId,0,0); // IMPORTANT REMARK: There was an update in Athena v23, compared to v22. There is a new <T> for getData() instance, which no longer needs the 2nd and 3rd accessor (adc, gain).
827 }
828 m_c_channelDSPThreshold->push_back(m_run2DSPThresh->tQThr(digId));
829 m_c_channelOfflEneRescaler->push_back(offl_EneRescaler);
830 m_c_channelOfflHVScale->push_back(offl_hv);
831 m_c_channelShape->push_back(shape);
832 m_c_channelShapeDer->push_back(shapeDer);
833 }
834 // Cell / readout data
835 m_c_channelEnergy->push_back(channelEnergyInClusterMap[k]);
836 m_c_channelTime->push_back(channelTimeInClusterMap[k]);
837 m_c_channelLayer->push_back(cellLayerMap[k]);
838 m_c_channelEffectiveSigma->push_back(channelEffectiveSigmaClusterMap[k]);
839 m_c_channelNoise->push_back(channelNoiseClusterMap[k]);
840 if (!m_noBadCells) m_c_channelBad->push_back(badChannelMap[k]);
841 // Calibration constants
842 m_c_channelOFCa->push_back(ofca);
843 m_c_channelOFCb->push_back(ofcb);
844 m_c_channelOFCTimeOffset->push_back(m_ofcs->timeOffset(digId,digGain));
845 m_c_channelADC2MEV0->push_back(adc2mev[0]);
846 m_c_channelADC2MEV1->push_back(adc2mev[1]);
847 m_c_channelPed->push_back(pedLAr);
848 m_c_channelMinBiasAvg->push_back(minBiasLAr);
849
850 // Channel info
851 int barrelEc = m_onlineLArID->barrel_ec(channelID);
852 int posNeg = m_onlineLArID->pos_neg(channelID);
853 int feedThr = m_onlineLArID->feedthrough(channelID); // feedthrough - cabling interface from cold and hot side. in barrel, there are 2 feedThr for each crate.
854 int slot = m_onlineLArID->slot(channelID);
855 int chn = m_onlineLArID->channel(channelID);
856 std::vector<int> chInfo {barrelEc, posNeg, feedThr, slot, chn } ; //unite info
857 m_c_channelChInfo->push_back(chInfo); //add to the list of cell info (both calo)
858
859 // important indexes
860 m_c_clusterChannelIndex->push_back(channelIndexMap[k]);//each LAr cell is an individual read out.
861 m_c_clusterIndex_chLvl->push_back(clusIndex); // what roi this cell belongs at the actual event: 0, 1, 2 ...
862 m_c_channelHashMap->push_back(index); // online id hash for channel
863 m_c_channelChannelIdMap->push_back(channelID.get_identifier32().get_compact());
864
865
866 if (m_printCellsClus){
867
868 ATH_MSG_INFO ("(Cluster) In DumpLAr Digits: ReadOutIndex "<< channelIndexMap[k] << ". HwId " << channelID);
869 ATH_MSG_INFO ("(Cluster) In DumpLAr Digits: ReadOutIndex "<< channelIndexMap[k] << " HwId.get_compact() " << channelID.get_compact());
870 ATH_MSG_INFO ("(Cluster) In DumpLAr Digits: ReadOutIndex "<< channelIndexMap[k] << " HwId.get_identifier32().get_compact() " << channelID.get_identifier32().get_compact());
871
872 ATH_MSG_INFO("(Cluster) LAr OFC timeOffset: "<< m_ofcs->timeOffset(digId, digGain) <<", dig->hardwareID: " << digId << ", dig->channelID: "<< channelID);
873 ATH_MSG_INFO("\tOFCa ("<< ofca.size()<<"): ["<< ofca[0] <<", " << ofca[1] <<", " << ofca[2]<<", " << ofca[3] <<"]");
874 ATH_MSG_INFO("\tOFCb ("<< ofcb.size()<<"): ["<< ofcb[0] <<", " << ofcb[1] <<", " << ofcb[2]<<", " << ofcb[3] <<"]");
875
876 ATH_MSG_DEBUG ("(Cluster) In DumpLAr Digits: ReadOutIndex "<< channelIndexMap[k] << ". HwId (B_EC/P_N/FeedTr/slot/ch) " << channelID << " (" << barrelEc << "/" << posNeg << "/"<< feedThr << "/" << slot << "/" << chn << ". Dig (float): " << larDigit);
877
878 }
879 } //end-if caloHashMap matches
880 } //end for loop over caloHashMaps
881 } // end-if clustBits Test
882 } //end loop over LAr digits container
883 } //end-if larClustBits is not empty
884
885 // ##############################
886 // RAW CHANNEL INFO DUMP (CLUSTER)
887 // ##############################
888
889 // ========= LAr ==========
890 if (larClusteredDigits.any()) {
891 ATH_MSG_INFO ("(Cluster) Dumping LAr Raw Channel...");
892
893 for (const LArRawChannel& LArChannel : *LArRawCnt){
894
895 HWIdentifier channelID = LArChannel.channelID();
896 IdentifierHash chHwidHash = m_onlineLArID->channel_Hash(channelID);
897
898 size_t index = static_cast<size_t>(chHwidHash);
899
900 if (larClusteredDigits.test(index)){ //if this channel index is inside
901 for (unsigned int k=0 ; k < channelHwidInClusterMap.size() ; k++){ //loop over the vector of hashIndex, and verify if the cell index match.
902 if (channelHwidInClusterMap[k] == channelID){
903
904 //RawCh info
905 int rawEnergy = LArChannel.energy(); // energy in MeV (rounded to integer)
906 int rawTime = LArChannel.time(); // time in ps (rounded to integer)
907 uint16_t rawQuality = LArChannel.quality(); // quality from pulse reconstruction
908 int provenance = static_cast<int>(LArChannel.provenance()); // its uint16_t
909 float rawEnergyConv = static_cast<float>(rawEnergy);
910 float rawTimeConv = static_cast<float>(rawTime);
911 float rawQualityConv = static_cast<float>(rawQuality);
912
913 // Channel info
914 int barrelEc = m_onlineLArID->barrel_ec(channelID);
915 int posNeg = m_onlineLArID->pos_neg(channelID);
916 int feedThr = m_onlineLArID->feedthrough(channelID); // feedthrough - cabling interface from cold and hot side. in barrel, there are 2 feedThr for each crate.
917 int slot = m_onlineLArID->slot(channelID);
918 int chn = m_onlineLArID->channel(channelID);
919 std::vector<int> chInfo {barrelEc, posNeg, feedThr, slot, chn } ; //unite info
920 m_c_rawChannelChInfo->push_back(chInfo); //add to the list of cell info (both calo)
921
922 if ( (rawEnergy != rawEnergyConv) || (rawTime != rawTimeConv) || (rawQuality != rawQualityConv) ){
923 ATH_MSG_ERROR (" ###### (Cluster) LAR RAW CHANNEL: Value conversion from int to float of amplitude, time or quality (uint16_t) had changed its actual value !!!");
924 }
925 m_c_rawChannelAmplitude->push_back(rawEnergyConv);
926 m_c_rawChannelTime->push_back(rawTimeConv);
927 m_c_rawChannelLayer->push_back(cellLayerMap[k]);
928 m_c_rawChannelQuality->push_back(rawQualityConv);
929 m_c_rawChannelProv->push_back(provenance);
930 m_c_rawChannelPed->push_back(-8888); // masked LAr
931 if (!m_isMC){
932 m_c_rawChannelDSPThreshold->push_back(m_run2DSPThresh->tQThr(channelID));
933 }
934
935 // important indexes
936 m_c_clusterRawChannelIndex->push_back(channelIndexMap[k]);
937 m_c_clusterIndex_rawChLvl->push_back(clusIndex); // what roi this ch belongs
938 m_c_rawChannelIdMap->push_back(channelID.get_identifier32().get_compact());
939
940 if (m_printCellsClus){ //optional to help debugging
941
942 HWIdentifier hardwareID = LArChannel.hardwareID();
943
944 if (!m_isMC){
945 ATH_MSG_INFO ("(Cluster) In DumpLAr Raw "<< channelIndexMap[k] <<": hardwareID (B_EC/P_N/feedThr/slot/chn): " << hardwareID << "(" << barrelEc << "/" << posNeg << "/" << feedThr << "/" << slot << "/" << chn << ")" << ". Energy: " << rawEnergyConv << ". Time: " << rawTimeConv << ". Provenance: " << provenance << ". Quality: " << rawQualityConv <<" ecut (DSPThr) = " << m_run2DSPThresh->tQThr(channelID));
946 }
947 else{
948 ATH_MSG_INFO ("(Cluster) In DumpLAr Raw "<< channelIndexMap[k] <<": hardwareID (B_EC/P_N/feedThr/slot/chn): " << hardwareID << "(" << barrelEc << "/" << posNeg << "/" << feedThr << "/" << slot << "/" << chn << ")" << ". Energy: " << rawEnergyConv << ". Time: " << rawTimeConv << ". Provenance: " << provenance << ". Quality: " << rawQualityConv);
949 }
950
951 } // end-if optional cell print
952 } // end-if hwid match rawChID
953 } // end loop over HWIDClusterMap
954 } // end-if clust.test
955 } //end loop LArRawChannelContainer
956 } // end-if clustBits have Cells
957
958 larClusteredDigits.reset();
959
960 caloHashMap.clear();
961
962 channelHwidInClusterMap.clear();
963 cellIndexMap.clear();
964 cellLayerMap.clear();
965 clusCellEtaMap.clear();
966 clusCellPhiMap.clear();
967 channelIndexMap.clear();
968 channelEnergyInClusterMap.clear();
969 channelTimeInClusterMap.clear();
970 channelEtaInClusterMap.clear();
971 channelPhiInClusterMap.clear();
972 channelEffectiveSigmaClusterMap.clear();
973 channelNoiseClusterMap.clear();
974 channelCaloRegionMap.clear();
975 if (!m_noBadCells) badChannelMap.clear();
976
977 ATH_MSG_INFO (" (Cluster) RawChannel: "<< m_c_rawChannelAmplitude->size() <<" channels dumped, from " << m_c_cellEta->size() <<" cluster cells. ");
978 ATH_MSG_INFO (" (Cluster) Digits: "<< m_c_channelDigits->size() <<" channels dumped, out of " << m_c_rawChannelAmplitude->size() <<" raw channel cluster channels. ");
979 if (m_c_channelDigits->size() == m_c_rawChannelAmplitude->size()){
980 ATH_MSG_INFO (" (Cluster) ALL Digits from the cluster were dumped successfully!");}
981 else{
982 ATH_MSG_INFO (" (Cluster) The digits from "<< (m_c_rawChannelAmplitude->size() - m_c_channelDigits->size()) <<" channels are missing!");}
983
984
985 return StatusCode::SUCCESS;
986}
#define ATH_MSG_ERROR(x)
#define ATH_MSG_INFO(x)
#define pi
constexpr double twopi
const ILArMinBiasAverage * m_minBiasAvgs
SG::ReadHandleKey< LArDigitContainer > m_larDigitCntSgKey
const LArADC2MeV * m_adc2MeVs
const CaloCondBlobFlt * m_EneRescaler
Gaudi::Property< bool > m_printCellsClus
const ILArShape * m_shapes
const ILArOFC * m_ofcs
const ILArPedestal * m_peds
const LArOnlineID * m_onlineLArID
const ILArfSampl * m_fSampl
SG::ReadHandleKey< LArRawChannelContainer > m_larRawChCntSgKey
const CaloNoise * m_noiseCDO
SG::ReadHandleKey< LArHitContainer > m_larEMBHitCntSgKey
std::unique_ptr< LArDSPThresholdsFlat > m_run2DSPThresh
const LArOnOffIdMapping * m_larCabling
const CaloCell_ID * m_calocell_id
const LArHVCorr * m_oflHVCorr
int getCaloRegionIndex(const CaloCell *cell)
value_type get_compact() const
Get the compact id.
value_type get_compact() const
Get the compact id.
Identifier32 get_identifier32() const
Get the 32-bit version Identifier, will be invalid if >32 bits needed.
virtual bool isValid() override final
Can the handle be successfully dereferenced?
str index
Definition DeMoScan.py:362
SG::ReadCondHandle< T > makeHandle(const SG::ReadCondHandleKey< T > &key, const EventContext &ctx=Gaudi::Hive::currentContext())
cl
print [x.__class__ for x in toList(dqregion.getSubRegions()) ]
setWord1 uint16_t

◆ dumpElectrons()

StatusCode EventReaderAlg::dumpElectrons ( const xAOD::Electron * electron)
privatevirtual

Definition at line 306 of file EventReaderAlg.cxx.

306 {
307 float electronEt = electron->e()/(cosh(electron->trackParticle()->eta()));
308 float track_p = (electron->trackParticle())->pt()*std::cosh((electron->trackParticle())->eta());
309 float eoverp = (electron->caloCluster())->e()/track_p;
310 m_el_eoverp->push_back(eoverp);
311 m_el_Pt->push_back(electron->pt());
312 m_el_et->push_back(electronEt);
313 m_el_Eta->push_back(electron->eta());
314 m_el_Phi->push_back(electron->phi());
315 m_el_m->push_back(electron->m());
316
317 return StatusCode::SUCCESS;
318}

◆ dumpEventInfo()

StatusCode EventReaderAlg::dumpEventInfo ( SG::ReadHandle< xAOD::EventInfo > & ei)
privatevirtual

Definition at line 390 of file EventReaderAlg.cxx.

390 {
391 m_e_runNumber = ei->runNumber();
392 m_e_eventNumber = ei->eventNumber();
393 m_e_bcid = ei->bcid();
394 m_e_lumiBlock = ei->lumiBlock();
395 m_e_inTimePileup = ei->actualInteractionsPerCrossing();
396 m_e_outOfTimePileUp = ei->averageInteractionsPerCrossing();
397
398 ATH_MSG_INFO ("in execute, runNumber = " << m_e_runNumber << ", eventNumber = " << m_e_eventNumber << ", bcid: " << m_e_bcid );
399
400 return StatusCode::SUCCESS;
401}

◆ dumpLumiblockInfo()

StatusCode EventReaderAlg::dumpLumiblockInfo ( SG::ReadHandle< xAOD::EventInfo > & ei)
privatevirtual

Definition at line 378 of file EventReaderAlg.cxx.

378 {
379
380 if (!m_isMC){
381 m_lb_bcidLuminosity->push_back(m_lumis->lbLuminosityPerBCIDVector());
382 ATH_MSG_INFO ("LB_data: lbLuminosityPerBCIDVector stored into ntuple." );
383 }
384 m_lb_lumiblock->push_back( ei->lumiBlock() );
385 ATH_MSG_INFO ("LB_data: Lumiblock "<< ei->lumiBlock() << " stored into ntuple." );
386
387 return StatusCode::SUCCESS;
388}
const LuminosityCondData * m_lumis

◆ dumpOfflineSS()

StatusCode EventReaderAlg::dumpOfflineSS ( const xAOD::Electron * electron)
privatevirtual

Definition at line 288 of file EventReaderAlg.cxx.

288 {
289 m_el_f1->push_back(electron->showerShapeValue(xAOD::EgammaParameters::f1));
290 m_el_f3->push_back(electron->showerShapeValue(xAOD::EgammaParameters::f3));
291 m_el_eratio->push_back(electron->showerShapeValue(xAOD::EgammaParameters::Eratio));
292 m_el_weta1->push_back(electron->showerShapeValue(xAOD::EgammaParameters::weta1));
293 m_el_weta2->push_back(electron->showerShapeValue(xAOD::EgammaParameters::weta2));
294 m_el_fracs1->push_back(electron->showerShapeValue(xAOD::EgammaParameters::fracs1));
295 m_el_wtots1->push_back(electron->showerShapeValue(xAOD::EgammaParameters::wtots1));
296 m_el_e277->push_back(electron->showerShapeValue(xAOD::EgammaParameters::e277));
297 m_el_reta->push_back(electron->showerShapeValue(xAOD::EgammaParameters::Reta));
298 m_el_rphi->push_back(electron->showerShapeValue(xAOD::EgammaParameters::Rphi));
299 m_el_deltae->push_back(electron->showerShapeValue(xAOD::EgammaParameters::DeltaE));
300 m_el_rhad->push_back(electron->showerShapeValue(xAOD::EgammaParameters::Rhad));
301 m_el_rhad1->push_back(electron->showerShapeValue(xAOD::EgammaParameters::Rhad1));
302
303 return StatusCode::SUCCESS;
304}
@ wtots1
shower width is determined in a window detaxdphi = 0,0625 ×~0,2, corresponding typically to 20 strips...
@ e277
uncalibrated energy (sum of cells) of the middle sampling in a rectangle of size 7x7
Definition EgammaEnums.h:81
@ f3
fraction of energy reconstructed in 3rd sampling
Definition EgammaEnums.h:55
@ f1
E1/E = fraction of energy reconstructed in the first sampling, where E1 is energy in all strips belon...
Definition EgammaEnums.h:53
@ Eratio
(emaxs1-e2tsts1)/(emaxs1+e2tsts1)
@ DeltaE
e2tsts1-emins1
@ fracs1
shower shape in the shower core : [E(+/-3)-E(+/-1)]/E(+/-1), where E(+/-n) is the energy in ± n strip...
@ weta2
the lateral width is calculated with a window of 3x5 cells using the energy weighted sum over all cel...
@ weta1
shower width using +/-3 strips around the one with the maximal energy deposit: w3 strips = sqrt{sum(E...
Definition EgammaEnums.h:98

◆ dumpPrimVertexAssocToElectron()

StatusCode EventReaderAlg::dumpPrimVertexAssocToElectron ( const xAOD::Electron * el,
SG::ReadHandle< xAOD::VertexContainer > & primVertexCnt,
SG::ReadHandle< xAOD::EventInfo > & evtInfo )
privatevirtual

Definition at line 320 of file EventReaderAlg.cxx.

320 {
321
322 const xAOD::TrackParticle *trackElectron = el->trackParticle();
323
324 // check for primary vertex in the event
325 // *************** Primary vertex check ***************
326 //loop over vertices and look for good primary vertex
327 float bestDeltaZ0Sin = 9999.0, bestZfromVertex = 9999.0, bestXFromVertex = 9999.0, bestYFromVertex = 9999.0, bestDeltaZ0 = 9999.0;
328 double bestD0Sig = 9999.0;
329 int vtxCounter = 0;//, bestVtxCounter = 0;
330 bool isAnyClosestVtx = false;
331 for (const xAOD::Vertex *vxIter : *primVertexCnt) {
332
333 // Select good primary vertex
334 float zFromVertex = vxIter->z();
335 float delta_z0 = fabs(trackElectron->z0() + trackElectron->vz() - zFromVertex); //where trk.vz() represents the point of reference for the z0 calculation (in this case, the beamspot position along the z axis).
336 float delta_z0_sin = delta_z0 * sin(trackElectron->theta()); //where sin(trk.theta()) parameterises the uncertainty of the z0 measurement.
337 double d0sig = xAOD::TrackingHelpers::d0significance( trackElectron, evtInfo->beamPosSigmaX(), evtInfo->beamPosSigmaY(), evtInfo->beamPosSigmaXY() );
338
339
340 if ((vxIter->vertexType() == xAOD::VxType::PriVtx) && ( fabs(delta_z0_sin) < m_z0Tag) && (fabs(d0sig) < m_d0TagSig) ){ //is this vertex passed into d0sig and dz0Sin conditions?
341 isAnyClosestVtx = true;
342
343 ATH_MSG_DEBUG ("(dumpPrimVertexAssocToElectron) Vertex "<< vtxCounter << ": This is a primary vertex. |delta_z0_sin| < 0.5 mm ("<< delta_z0_sin << "). |d0sig| < 5 (" << d0sig << ")");
344 if ( (fabs(delta_z0_sin) < fabs(bestDeltaZ0Sin) ) && (fabs(d0sig) < fabs(bestD0Sig)) ) // is this vertex the closest one to that electron track?
345 {
346 // assign all variables to dump:
347 ATH_MSG_DEBUG ("(dumpPrimVertexAssocToElectron) New best associated Vertex. Vertex "<< vtxCounter << ": |delta_z0_sin| < 0.5 mm ("<< delta_z0_sin << "). |d0sig| < 5 (" << d0sig << ")");
348
349 bestDeltaZ0Sin = delta_z0_sin;
350 bestD0Sig = d0sig;
351
352 bestXFromVertex = vxIter->x();
353 bestYFromVertex = vxIter->y();
354 bestZfromVertex = zFromVertex;
355 bestDeltaZ0 = delta_z0;
356 }
357 }
358 vtxCounter++;
359 }
360 // --------- Dump here: ---------
361 if (isAnyClosestVtx){
362 m_vtx_x->push_back(bestXFromVertex);
363 m_vtx_y->push_back(bestYFromVertex);
364 m_vtx_z->push_back(bestZfromVertex);
365 m_vtx_deltaZ0->push_back(bestDeltaZ0);
366 m_vtx_delta_z0_sin->push_back(bestDeltaZ0Sin);
367 m_vtx_d0sig->push_back(bestD0Sig);
368 }
369 else{
370 ATH_MSG_ERROR("A pre-selected electron track has no closest vertex to dump! (weird?)");
371 }
372 // -------------------------------
373
374
375 return StatusCode::SUCCESS;
376}
Gaudi::Property< float > m_d0TagSig
Gaudi::Property< float > m_z0Tag
float z0() const
Returns the parameter.
float theta() const
Returns the parameter, which has range 0 to .
float vz() const
The z origin for the parameters.
double d0significance(const xAOD::TrackParticle *tp, double d0_uncert_beam_spot_2)
@ PriVtx
Primary vertex.
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Vertex_v1 Vertex
Define the latest version of the vertex class.

◆ dumpTruthParticle()

StatusCode EventReaderAlg::dumpTruthParticle ( SG::ReadHandle< xAOD::ElectronContainer > & electronSelectionCnt,
SG::ReadHandle< xAOD::TruthParticleContainer > & truthParticleCnt )
privatevirtual

Definition at line 499 of file EventReaderAlg.cxx.

499 {
500 ATH_MSG_INFO("Dumping Truth Particle...");
501
502 auto elecCandidates = std::make_unique<ConstDataVector<xAOD::TruthParticleContainer>> (SG::VIEW_ELEMENTS);
503
504 if (truthParticleCnt->size() == 0) ATH_MSG_INFO("truthParticleCnt is empty!");
505 else{
506 for (const xAOD::Electron *recElectron : *electronSelectionCnt){
507
509 elecCandidates->push_back( truth );
510
511 ATH_MSG_INFO("(TruthParticle) Reco pt="<< recElectron->pt()<<" , Truth pt= "<< truth->pt());
512 }
513 }
514
515 if (elecCandidates->size() > 0) ATH_MSG_INFO("(TruthParticle) Size of elecCandidates is "<< elecCandidates->size()<<" !");
516
517 for (const xAOD::TruthParticle *elecSelected : *elecCandidates){
518 const xAOD::TruthVertex* vertex = elecSelected->prodVtx();
519
520 TLorentzVector elecCandidateLorentz;
521 elecCandidateLorentz.SetPtEtaPhiE(elecSelected->pt(),elecSelected->eta(),elecSelected->phi(),elecSelected->e());
522
523 m_mc_vert_x->push_back(vertex->x()); // vertex displacement
524 m_mc_vert_y->push_back(vertex->y()); // vertex displacement
525 m_mc_vert_z->push_back(vertex->z()); // vertex displacement in beam direction
526 m_mc_vert_time->push_back(vertex->t()); // vertex time
527 m_mc_vert_perp->push_back(vertex->perp()); // Vertex transverse distance from the beam line
528 m_mc_vert_eta->push_back(vertex->eta()); // Vertex pseudorapidity
529 m_mc_vert_phi->push_back(vertex->phi()); // Vertex azimuthal angle
530 m_mc_vert_uniqueID->push_back(HepMC::uniqueID(vertex));
531 m_mc_vert_status->push_back(HepMC::status(vertex));
532
533 m_mc_part_energy->push_back(elecSelected->e());
534 m_mc_part_pt->push_back(elecSelected->pt());
535 m_mc_part_pdgId->push_back(elecSelected->pdgId());
536 m_mc_part_m->push_back(elecSelected->m());
537 m_mc_part_phi->push_back(elecSelected->phi());
538 m_mc_part_eta->push_back(elecSelected->eta());
539 }
540 ATH_CHECK (evtStore()->record( elecCandidates.release(), "MyMatchedTruthElectrons"));
541 return StatusCode::SUCCESS;
542
543}
#define ATH_CHECK
Evaluate an expression and check for errors.
virtual double pt() const override final
The transverse momentum ( ) of the particle.
int uniqueID(const T &p)
int status(const T &p)
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts
const xAOD::TruthParticle * getTruthParticle(const xAOD::IParticle &p)
Return the truthParticle associated to the given IParticle (if any).
TruthVertex_v1 TruthVertex
Typedef to implementation.
Definition TruthVertex.h:15
TruthParticle_v1 TruthParticle
Typedef to implementation.
Electron_v1 Electron
Definition of the current "egamma version".

◆ dumpZeeCut()

StatusCode EventReaderAlg::dumpZeeCut ( SG::ReadHandle< xAOD::EventInfo > & ei,
SG::ReadHandle< xAOD::VertexContainer > & primVertexCnt,
const EventContext & ctx )
privatevirtual

Definition at line 403 of file EventReaderAlg.cxx.

403 {
404 ATH_MSG_INFO("Dumping Zee cut region...");
405
406 auto electronSelectionCnt = std::make_unique<ConstDataVector<xAOD::ElectronContainer>> (SG::VIEW_ELEMENTS);
407 auto TagAndProbeElectronSelectionCnt = std::make_unique<ConstDataVector<xAOD::ElectronContainer>> (SG::VIEW_ELEMENTS);
408
409 SG::ReadHandle<xAOD::ElectronContainer> electronsCnt = SG::makeHandle(m_electronCntSgKey,ctx);
410
411 if (!electronsCnt.isValid()) {
412 ATH_MSG_ERROR("Electron container is not valid!");
413 return StatusCode::FAILURE;
414 }
415
416 // Pre-selection of electrons
417 for (auto el : *electronsCnt){
418 if (std::abs(el->eta()) > m_elecEtaCut){ // apply electron |eta| cut
419 continue;
420 }
421 if (trackSelectionElectrons(el, primVertexCnt, ei) == true){
422 if (eOverPElectron(el) == true){ // if 0.7 < E/p < 1.4
423 electronSelectionCnt->push_back( el );
424 }
425 }
426 else continue;
427 }
428
429 if (m_doElecSelectByTrackOnly){ // do not proceed to T&P
430 ATH_CHECK (evtStore()->record( electronSelectionCnt.release(), "MySelectedElectrons"));
431 return StatusCode::SUCCESS;
432 }
433
434 if (electronSelectionCnt->size() < 2){
435 ATH_MSG_DEBUG("(TagAndProbe) Not enough Electrons for T&P (nElectrons="<<electronSelectionCnt->size() << "). Storing "<<electronSelectionCnt->size()<<" electron on MyTagAndProbeElectrons container. This will not be dumped!");
436 ATH_CHECK (evtStore()->record( TagAndProbeElectronSelectionCnt.release(), "MyTagAndProbeElectrons"));
437 return StatusCode::SUCCESS;
438 }
439
440 // ## Loop over electron container in search of Zee pairs ##
441 for (const xAOD::Electron *elTag : *electronSelectionCnt){
442
443 if (! isTagElectron(elTag)) continue;
444 ATH_MSG_DEBUG("(TagAndProbe) Electron is a Tag!");
445
446 for (const xAOD::Electron *elProbe : *electronSelectionCnt){
447 if (elTag==elProbe) continue;
448
449 //check for charge (opposite charges for Zee)
450 if ( elTag->charge() == elProbe->charge() ) continue;
451 ATH_MSG_DEBUG ("(TagAndProbe) Electron Pair Charges are opposite! Good.");
452
453 //check for Zee mass
454 TLorentzVector el1;
455 TLorentzVector el2;
456 el1.SetPtEtaPhiE(elTag->pt(), elTag->trackParticle()->eta(), elTag->trackParticle()->phi(), elTag->e());
457 el2.SetPtEtaPhiE(elProbe->pt(), elProbe->trackParticle()->eta(), elProbe->trackParticle()->phi(), elProbe->e());
458
459 float tpPairMass = (el1 + el2).M(); // mass of the electron pair
460 ATH_MSG_DEBUG ("(TagAndProbe) Electron Pair mass: " << tpPairMass << ". Min: "<< m_minZeeMassTP*GeV << ". Max: " << m_maxZeeMassTP*GeV);
461 if (!((tpPairMass > m_minZeeMassTP*GeV) && (tpPairMass < m_maxZeeMassTP*GeV))){
462 ATH_MSG_DEBUG ("(TagAndProbe) Electron pair not in Z mass window.");
463 continue;
464 }
465 else{
466 ATH_MSG_INFO ("(TagAndProbe) Electron-positron pair are in Z mass window.");
467 // test for goodProbeElectron
468 if (!isGoodProbeElectron(elProbe)){
469 ATH_MSG_DEBUG (" Probe electron not passed in Goodnes of Probe test.");
470 continue;
471 }
472 ATH_MSG_INFO("(TagAndProbe) Electron is a good probe.");
473 ATH_MSG_INFO ("Tag and probe pair found.");
474
475 ATH_MSG_INFO ("TAG: pt="<< elTag->pt() << " e="<< elTag->e());
476 ATH_MSG_INFO ("PRO: pt="<< elProbe->pt() << " e="<< elProbe->e());
477 ATH_MSG_INFO ("Zee: M="<< tpPairMass << " E="<< (el1 + el2).E());
478 m_zee_M->push_back((el1 + el2).M());
479 m_zee_E->push_back((el1 + el2).E());
480 m_zee_pt->push_back((el1 + el2).Pt());
481 m_zee_px->push_back((el1 + el2).Px());
482 m_zee_py->push_back((el1 + el2).Py());
483 m_zee_pz->push_back((el1 + el2).Pz());
484 m_zee_T->push_back((el1 + el2).T());
485 m_zee_deltaR->push_back(el1.DeltaR(el2));
486
487 // ****************************************************************
488 // store electrons in a container to dump their clusters and cells.
489 TagAndProbeElectronSelectionCnt->push_back( (elTag) );
490 // ****************************************************************
491 }
492 } //end-loop probe electrons
493 } //end-loop tag electrons
494
495 ATH_CHECK (evtStore()->record( TagAndProbeElectronSelectionCnt.release(), "MyTagAndProbeElectrons"));
496 return StatusCode::SUCCESS;
497}
Gaudi::Property< float > m_minZeeMassTP
SG::ReadHandleKey< xAOD::ElectronContainer > m_electronCntSgKey
Gaudi::Property< float > m_maxZeeMassTP
bool isGoodProbeElectron(const xAOD::Electron *el)
bool isTagElectron(const xAOD::Electron *electron)
bool trackSelectionElectrons(const xAOD::Electron *electron, SG::ReadHandle< xAOD::VertexContainer > &primVertexCnt, SG::ReadHandle< xAOD::EventInfo > &ei)
Gaudi::Property< float > m_elecEtaCut
bool eOverPElectron(const xAOD::Electron *electron)
unsigned long long T

◆ eOverPElectron()

bool EventReaderBaseAlg::eOverPElectron ( const xAOD::Electron * electron)
protectedinherited

Definition at line 31 of file EventReaderBaseAlg.cxx.

31 {
32 // the E/p is calculated here based on Electron caloCluster and its associated trackParticle
33 // E_cluster/p_track
34 float eoverp = 0.;
35 float track_p = (electron->trackParticle())->pt()*std::cosh((electron->trackParticle())->eta());
36 if (track_p != 0.) eoverp = (electron->caloCluster())->e()/track_p;
37 else{
38 ATH_MSG_WARNING ("(eOverP) Track_p == 0");
39 return false;
40 }
41 if ((fabs(eoverp) < 0.7) || (fabs(eoverp) > 1.5) ){
42 ATH_MSG_DEBUG ("(eOverP) E/p is out of range! (eoverp="<<eoverp<<").");
43 return false;
44 }
45 else{
46 ATH_MSG_DEBUG ("(eOverP) Passed: E/p="<<eoverp);
47 return true;
48 }
49}
#define ATH_MSG_WARNING(x)

◆ evtStore()

ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

◆ execute()

StatusCode EventReaderAlg::execute ( const EventContext & ctx)
overridevirtual

Execute method.

Provides access to the EventContext if needed but is non-const as opposed to AthReentrantAlgorithm.

Reimplemented from EventReaderBaseAlg.

Definition at line 110 of file EventReaderAlg.cxx.

110 {
111 ATH_MSG_DEBUG ("Executing " << name() << "...");
112 ATH_MSG_DEBUG("Cleanning of event variables...");
113 clear(); // clear all variables selected to dump to the output NTuple.
114
115 // Conditions
116 if (!m_isMC){
117
118 if (!m_EneRescalerFldr.empty()){
119 SG::ReadCondHandle<AthenaAttributeList> EneRescalerHdl (m_EneRescalerFldr,ctx);
120 const coral::Blob& blob = (**EneRescalerHdl)["CaloCondBlob16M"].data<coral::Blob>();
121 if (blob.size()<3) ATH_MSG_WARNING("Found empty blob, no correction needed");
122 m_EneRescaler = CaloCondBlobFlt::getInstance(blob); // offline egamma cell correction (due from 5 to 4 downsampling rate)
123 ATH_MSG_DEBUG("offlineEnergyRescaler is set!");
124 }
125
126 if (!m_run2DSPThresholdsKey.empty()) {
127 SG::ReadCondHandle<AthenaAttributeList> dspThrshAttrHdl (m_run2DSPThresholdsKey,ctx);
128 m_run2DSPThresh = std::unique_ptr<LArDSPThresholdsFlat>(new LArDSPThresholdsFlat(*dspThrshAttrHdl));
129 ATH_MSG_DEBUG("DSPThreshold has set!");
130 }
131
132 if (!m_lumiDataKey.empty()){
133 SG::ReadCondHandle<LuminosityCondData> lumiHdl (m_lumiDataKey,ctx);
134 m_lumis =*lumiHdl;
135 ATH_MSG_DEBUG("LuminosityCondData is set!");
136 }
137
138 if (!m_offlineHVScaleCorrKey.empty()){
139 SG::ReadCondHandle<LArHVCorr> oflHVCorrHdl (m_offlineHVScaleCorrKey,ctx);
140 m_oflHVCorr =*oflHVCorrHdl;
141 ATH_MSG_DEBUG("OfflineHVCorrection is set!");
142 }
143 }
144 else{
145 if (!m_fSamplKey.empty()){ // MC
146 SG::ReadCondHandle<ILArfSampl> fSamplHdl (m_fSamplKey,ctx);
147 m_fSampl = *fSamplHdl;
148 ATH_MSG_DEBUG("SamplingFraction is set!");
149 }
150 }
151
152 SG::ReadCondHandle<LArOnOffIdMapping> larCablingHdl (m_larCablingKey,ctx);
153 SG::ReadCondHandle<CaloNoise> noiseHdl (m_noiseCDOKey,ctx);
154 SG::ReadCondHandle<ILArPedestal> pedHdl (m_pedestalKey,ctx);
155 SG::ReadCondHandle<LArADC2MeV> adc2mevHdl (m_adc2MeVKey,ctx);
156 SG::ReadCondHandle<ILArOFC> ofcHdl (m_ofcKey,ctx);
157 SG::ReadCondHandle<ILArShape> shapeHdl (m_shapeKey,ctx);
158 SG::ReadCondHandle<ILArMinBiasAverage> minBiasAvgHdl (m_minBiasAvgKey,ctx);
159
160 m_larCabling = *larCablingHdl;
161 m_noiseCDO = *noiseHdl;
162 m_peds = *pedHdl;
163 m_adc2MeVs = *adc2mevHdl;
164 m_ofcs = *ofcHdl;
165 m_shapes = *shapeHdl;
166 m_minBiasAvgs = *minBiasAvgHdl;
167
168 SG::ReadHandle<xAOD::EventInfo> ei = SG::makeHandle(m_eventInfoSgKey,ctx);
169 if (!ei.isValid()) ATH_MSG_ERROR(" EventInfo container is not valid!");
170
171 if (ei->errorState(xAOD::EventInfo::LAr) == xAOD::EventInfo::Error) {
172 ATH_MSG_WARNING("Event not passing LAr! Skipping event.");
173 return StatusCode::SUCCESS;
174 }
175
176 SG::ReadHandle<xAOD::VertexContainer> primVertexCnt = SG::makeHandle(m_primVertSgKey,ctx);
177 if (!primVertexCnt.isValid()) ATH_MSG_ERROR(" Primary Vertex container is not valid!");
178
179 // *** Lumiblock data ***
180 // Verify if ei->lumiBlock() was dumped into lb_lumiblock. if not, add it.
181 // Each LB entry should be dumped just once, since their content doesnt change per event.
182 if (std::count(m_lb_lumiblock->begin(), m_lb_lumiblock->end(), ei->lumiBlock()) == 0){
183 if(!dumpLumiblockInfo(ei)) ATH_MSG_INFO("Lumiblock information cannot be collected!");
184 }
185
186 // EventInfo
187 if(!dumpEventInfo(ei)) ATH_MSG_INFO("Event information cannot be collected!");
188
189 // Clusters
190 if (m_doClusterDump){
191
192 SG::ReadHandle<xAOD::CaloClusterContainer> cls = SG::makeHandle(m_caloClusSgKey,ctx);
193
194 if(!cls.isValid()){
195 ATH_MSG_ERROR("CaloCluster container is not valid!");
196 return StatusCode::FAILURE;
197 }
198
199 for (const xAOD::CaloCluster *cl : *cls){
200 ATH_MSG_DEBUG ("Cluster "<< m_c_clusterIndexCounter << ", Total size: " << cl->numberCells() << "/ "<< cl->clusterSize() << ", etaBE: " << cl->etaBE(2) << ", numberCellsInSampling: " << cl->numberCellsInSampling(CaloSampling::EMB2) <<", eta size: " << cl->etasize(CaloSampling::EMB2) << ", phi size: " << cl->phisize(CaloSampling::EMB2) );
201
202 if (! dumpClusterCells(cl, m_c_clusterIndexCounter , ctx) ) ATH_MSG_WARNING ("CaloCluster Cells cannot be dumped for Zee.");
203
205 }
206 }
207
208 // Apply the Zee cut
210
211 if(!dumpZeeCut(ei,primVertexCnt, ctx)) ATH_MSG_DEBUG("Zee cut algorithm cannot be executed!");
212
213 std::string eSelectionText = "";
214 SG::ReadHandle<xAOD::ElectronContainer> myElectronsSelection;
215
216 if (m_doElecSelectByTrackOnly) eSelectionText = "Number of myElectronsSelection single electrons: ";
217 else eSelectionText = "Number of myElectronsSelection tagAndProbe Zee candidates: ";
218
219 myElectronsSelection = SG::makeHandle(m_myElecSelectionSgKey,ctx);
220 // Optional: Skip empty events.
221 if (m_skipEmptyEvents && (myElectronsSelection->size() == 0)){
222 ATH_MSG_INFO("This event has no selected electrons! Cleanning event variables and skipping writing to NTuple...");
223 clear(); // clear all variables selected to dump to the output NTuple.
224 return StatusCode::SUCCESS;
225 }
226
227 if(!FillNTupleWithSelectedElectrons(ei, primVertexCnt, myElectronsSelection, eSelectionText, ctx)) ATH_MSG_DEBUG("FillNTupleWithElectrons cannot be executed!");
228
229 if (m_isMC){
230 // Particle Truth
232 SG::ReadHandle<xAOD::TruthParticleContainer> truthParticleCnt = SG::makeHandle(m_truthParticleCntSgKey,ctx);
233 if (!truthParticleCnt.isValid()) ATH_MSG_ERROR("TruthParticleContainer is not valid!");
234
235 if(!dumpTruthParticle(myElectronsSelection, truthParticleCnt)) ATH_MSG_DEBUG("Truth Particle information cannot be collected!");
236 }
237 }
238 } // end if-start TagAndProbe chain
239
240 m_Tree->Fill();
241
242 return StatusCode::SUCCESS;
243}
static CaloCondBlobFlt * getInstance(coral::Blob &blob)
Returns a pointer to a non-const CaloCondBlobFlt.
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoSgKey
SG::ReadHandleKey< xAOD::VertexContainer > m_primVertSgKey
Gaudi::Property< bool > m_skipEmptyEvents
SG::ReadCondHandleKey< LArOnOffIdMapping > m_larCablingKey
SG::ReadCondHandleKey< ILArMinBiasAverage > m_minBiasAvgKey
SG::ReadCondHandleKey< LArADC2MeV > m_adc2MeVKey
virtual StatusCode dumpTruthParticle(SG::ReadHandle< xAOD::ElectronContainer > &electronSelectionCnt, SG::ReadHandle< xAOD::TruthParticleContainer > &truthParticleCnt)
SG::ReadHandleKey< xAOD::ElectronContainer > m_myElecSelectionSgKey
SG::ReadCondHandleKey< LuminosityCondData > m_lumiDataKey
virtual StatusCode FillNTupleWithSelectedElectrons(SG::ReadHandle< xAOD::EventInfo > &ei, SG::ReadHandle< xAOD::VertexContainer > &primVertexCnt, SG::ReadHandle< xAOD::ElectronContainer > &electronSelectionCnt, std::string &eSelectionText, const EventContext &ctx)
virtual StatusCode dumpLumiblockInfo(SG::ReadHandle< xAOD::EventInfo > &ei)
virtual StatusCode dumpClusterCells(const xAOD::CaloCluster *cl, int clusIndex, const EventContext &ctx)
SG::ReadCondHandleKey< AthenaAttributeList > m_run2DSPThresholdsKey
virtual StatusCode dumpEventInfo(SG::ReadHandle< xAOD::EventInfo > &ei)
SG::ReadCondHandleKey< ILArfSampl > m_fSamplKey
virtual StatusCode dumpZeeCut(SG::ReadHandle< xAOD::EventInfo > &ei, SG::ReadHandle< xAOD::VertexContainer > &primVertexCnt, const EventContext &ctx)
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthParticleCntSgKey
SG::ReadCondHandleKey< ILArShape > m_shapeKey
SG::ReadCondHandleKey< ILArOFC > m_ofcKey
SG::ReadCondHandleKey< ILArPedestal > m_pedestalKey
SG::ReadHandleKey< xAOD::CaloClusterContainer > m_caloClusSgKey
Gaudi::Property< bool > m_doClusterDump
SG::ReadCondHandleKey< CaloNoise > m_noiseCDOKey
SG::ReadCondHandleKey< LArHVCorr > m_offlineHVScaleCorrKey
SG::ReadCondHandleKey< AthenaAttributeList > m_EneRescalerFldr
@ LAr
The LAr calorimeter.
@ Error
The sub-detector issued an error.
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase & ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ extraOutputDeps()

const DataObjIDColl & AthAlgorithm::extraOutputDeps ( ) const
overridevirtualinherited

Return the list of extra output dependencies.

This list is extended to include symlinks implied by inheritance relations.

Definition at line 50 of file AthAlgorithm.cxx.

51{
52 // If we didn't find any symlinks to add, just return the collection
53 // from the base class. Otherwise, return the extended collection.
54 if (!m_extendedExtraObjects.empty()) {
56 }
57 return Algorithm::extraOutputDeps();
58}
DataObjIDColl m_extendedExtraObjects

◆ FillNTupleWithSelectedElectrons()

StatusCode EventReaderAlg::FillNTupleWithSelectedElectrons ( SG::ReadHandle< xAOD::EventInfo > & ei,
SG::ReadHandle< xAOD::VertexContainer > & primVertexCnt,
SG::ReadHandle< xAOD::ElectronContainer > & electronSelectionCnt,
std::string & eSelectionText,
const EventContext & ctx )
privatevirtual

Definition at line 245 of file EventReaderAlg.cxx.

245 {
246
247 ATH_MSG_INFO(eSelectionText << elContainer->size() );
248
249 int electronIndex = 0;
250 for (const xAOD::Electron *elec : *elContainer){
251
252 const auto& clusLinks = elec->caloClusterLinks(); // get the cluster links for the electron
253
254 // loop over clusters and dump cells
255 for (const auto& clusLink : clusLinks){
256
257 // get associated topoclusters from superclusters
259 auto assocCls = xAOD::EgammaHelpers::getAssociatedTopoClusters( (*clusLink) );
260
261 for ( auto assocCl : assocCls){
262 ATH_MSG_DEBUG ("AssociatedTopoCluster " << m_c_clusterIndexCounter << ": e: "<< assocCl->e() << ", eta: " << assocCl->eta() << ", phi: " << assocCl->phi() <<". Total size: " << assocCl->numberCells() << "/ "<< assocCl->clusterSize() << ", etaBE: " << assocCl->etaBE(2) << ", numberCellsInSampling: " << assocCl->numberCellsInSampling(CaloSampling::EMB2) <<", eta size: " << assocCl->etasize(CaloSampling::EMB2) << ", phi size: " << assocCl->phisize(CaloSampling::EMB2) );
263 if (! dumpClusterCells(assocCl, m_c_clusterIndexCounter, ctx ) ) ATH_MSG_WARNING ("CaloCluster Cells cannot be dumped for Zee.");
264
266 }
267 }
268 else{ // dump only the superclusters
269 if (! dumpClusterCells((*clusLink), m_c_clusterIndexCounter, ctx ) ) ATH_MSG_WARNING ("CaloCluster Cells cannot be dumped for Zee.");
271 }
272 m_c_electronIndex_clusterLvl->push_back(electronIndex); // electron indexes for each cluster
273 } //end-for loop in clusLinks
274
275 // dump tag and probe electrons
276 if (!dumpElectrons(elec)) ATH_MSG_WARNING ("Cannot dump ordinary electrons...");
277 if (!dumpOfflineSS(elec)) ATH_MSG_WARNING ("Cannot dump offline shower shapes for electrons...");
278 if (!dumpPrimVertexAssocToElectron(elec, primVertexCnt, ei)) ATH_MSG_WARNING ("Cannot dump primary vertexes info associated to electrons...");
279 m_el_index->push_back(electronIndex);
280
281 electronIndex++;
282
283 } // end-for loop in m_electronsSelectedByTrack electrons
284
285 return StatusCode::SUCCESS;
286}
Gaudi::Property< bool > m_getAssociatedTopoCluster
virtual StatusCode dumpOfflineSS(const xAOD::Electron *electron)
virtual StatusCode dumpPrimVertexAssocToElectron(const xAOD::Electron *el, SG::ReadHandle< xAOD::VertexContainer > &primVertexCnt, SG::ReadHandle< xAOD::EventInfo > &evtInfo)
virtual StatusCode dumpElectrons(const xAOD::Electron *electron)
std::vector< const xAOD::CaloCluster * > getAssociatedTopoClusters(const xAOD::CaloCluster *cluster)
Return a vector of all the topo clusters associated with the egamma cluster.

◆ filterPassed() [1/2]

bool AthAlgorithm::filterPassed ( ) const
inherited

Definition at line 94 of file AthAlgorithm.cxx.

94 {
95 return filterPassed( Gaudi::Hive::currentContext() );
96}
bool filterPassed() const

◆ filterPassed() [2/2]

bool AthAlgorithm::filterPassed ( const EventContext & ctx) const
inherited

Definition at line 98 of file AthAlgorithm.cxx.

98 {
99 return execState( ctx ).filterPassed();
100}

◆ finalize()

StatusCode EventReaderAlg::finalize ( )
overridevirtual

Reimplemented from EventReaderBaseAlg.

Definition at line 989 of file EventReaderAlg.cxx.

989 {
990 ATH_MSG_DEBUG ("Finalizing " << name() << "...");
991 m_secondTree->Fill();
992
993 return StatusCode::SUCCESS;
994}

◆ fixPhi()

double EventReaderBaseAlg::fixPhi ( double phi)
protectedinherited

Definition at line 217 of file EventReaderBaseAlg.cxx.

217 {
218 // Verify the phi value, if its in -pi,pi interval, then shifts 2pi in the correct direction.
219 if (phi < -1*pi) return (phi + 2*pi);
220 if (phi > 1*pi) return (phi - 2*pi);
221 return phi;
222}
Scalar phi() const
phi method

◆ getCaloRegionIndex()

int EventReaderBaseAlg::getCaloRegionIndex ( const CaloCell * cell)
protectedinherited

Definition at line 205 of file EventReaderBaseAlg.cxx.

205 {
206 if (cell->caloDDE()->is_tile()) return 0; //belongs to Tile
207 else if (cell->caloDDE()->is_lar_em_barrel()) return 1; //belongs to EM barrel
208 else if (cell->caloDDE()->is_lar_em_endcap_inner()) return 2; //belongs to the inner wheel of EM end cap
209 else if (cell->caloDDE()->is_lar_em_endcap_outer()) return 3; //belongs to the outer wheel of EM end cap
210 else if (cell->caloDDE()->is_lar_hec()) return 4; //belongs to HEC
211 else if (cell->caloDDE()->is_lar_fcal()) return 5; //belongs to FCAL
212
213 ATH_MSG_ERROR (" #### Region not found for cell offline ID "<< cell->ID() <<" ! Returning -999.");
214 return -999; //region not found
215}

◆ getContext()

const EventContext & AthAlgorithm::getContext ( ) const
inherited

Deprecated methods (use the ones with EventContext).

Definition at line 90 of file AthAlgorithm.cxx.

90 {
91 return Gaudi::Hive::currentContext();
92}

◆ initialize()

StatusCode EventReaderAlg::initialize ( )
overridevirtual

Reimplemented from EventReaderBaseAlg.

Definition at line 34 of file EventReaderAlg.cxx.

34 {
35 ATH_MSG_INFO ("Initializing " << name() << "...");
36 ATH_MSG_INFO ("(EventReader) Initializing conditions...");
37
38 // Conditions
41 ATH_CHECK(m_noiseCDOKey.initialize()); //---- retrieve the noise CDO
42 ATH_CHECK(m_lumiDataKey.initialize() );
43 ATH_CHECK(m_pedestalKey.initialize());
44 ATH_CHECK(m_adc2MeVKey.initialize());
45 ATH_CHECK(m_ofcKey.initialize());
46 ATH_CHECK(m_shapeKey.initialize());
47 ATH_CHECK(m_minBiasAvgKey.initialize());
48 ATH_CHECK(m_fSamplKey.initialize());
50 ATH_MSG_DEBUG(" (EventReader) Condition Keys initialized!");
51
52 // Containers
53 ATH_CHECK(m_eventInfoSgKey.initialize());
54 ATH_CHECK(m_primVertSgKey.initialize());
55 ATH_CHECK(m_caloClusSgKey.initialize());
58 ATH_CHECK(m_electronCntSgKey.initialize());
59 ATH_CHECK(m_truthEventCntSgKey.initialize());
60 ATH_CHECK(m_larEMBHitCntSgKey.initialize());
61 ATH_CHECK(m_larDigitCntSgKey.initialize());
62 ATH_CHECK(m_larRawChCntSgKey.initialize());
63 ATH_CHECK(m_allCaloCellCntSgKey.initialize());
64 ATH_MSG_DEBUG(" (EventReader) Container Keys initialized!");
65
66 // -- Retrieve ID Helpers --
67 ATH_CHECK( detStore()->retrieve(m_onlineLArID, "LArOnlineID") ); // get online ID info from LAr (online)
68 ATH_CHECK( detStore()->retrieve (m_calocell_id, "CaloCell_ID") );
69 ATH_CHECK( m_larCablingKey.initialize());
70
71 StatusCode sc = detStore()->retrieve(m_caloIdMgr);
72 if (sc.isFailure()) {
73 ATH_MSG_ERROR(" Unable to retrieve CaloIdManager from DetectoreStore");
74 return StatusCode::FAILURE;
75 }
76 else{
77 m_larem_id = m_caloIdMgr->getEM_ID();
78 m_larhec_id = m_caloIdMgr->getHEC_ID();
79 m_larfcal_id = m_caloIdMgr->getFCAL_ID();
80 }
81 // -------------------------
82
83 // Book the variables to save in the *.root
84 m_Tree = new TTree("dumpedData", "dumpedData");
85 m_secondTree = new TTree("lumiblockData", "lumiblockData");
86
87 ATH_MSG_DEBUG("Booking branches...");
88 bookBranches(m_Tree); // book TTree with branches
90
91 if (!m_ntsvc->regTree("/rec/tree1", m_Tree).isSuccess()) {
92 ATH_MSG_ERROR("could not register tree [dumpedData]");
93 return StatusCode::FAILURE;
94 }
95 if (!m_ntsvc->regTree("/rec/tree2", m_secondTree).isSuccess()) {
96 ATH_MSG_ERROR("could not register tree [database]");
97 return StatusCode::FAILURE;
98 }
99
100 if (m_doTagAndProbe && m_doElecSelectByTrackOnly) ATH_MSG_INFO("Entering single_e mode...");
101 else if (m_doTagAndProbe && !m_doElecSelectByTrackOnly) ATH_MSG_INFO("Entering Zee T&P mode...");
102 else {
103 ATH_MSG_ERROR("No valid electron chain selected!");
104 return StatusCode::FAILURE;
105 }
106
107 return StatusCode::SUCCESS;
108}
static Double_t sc
const ServiceHandle< StoreGateSvc > & detStore() const
const LArEM_ID * m_larem_id
SG::ReadHandleKey< xAOD::TruthEventContainer > m_truthEventCntSgKey
const LArFCAL_ID * m_larfcal_id
const LArHEC_ID * m_larhec_id
const CaloIdManager * m_caloIdMgr
SG::ReadHandleKey< CaloCellContainer > m_allCaloCellCntSgKey
void bookDatabaseBranches(TTree *tree)
void bookBranches(TTree *tree)
::StatusCode StatusCode
StatusCode definition for legacy code.

◆ inputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ isEtaOutsideLArCrack()

bool EventReaderBaseAlg::isEtaOutsideLArCrack ( float absEta)
protectedinherited

Definition at line 196 of file EventReaderBaseAlg.cxx.

196 {
197 if ( (absEta > 1.37 && absEta < 1.52) || (absEta > 2.47) ){
198 return false;
199 }
200 else{
201 return true;
202 }
203}

◆ isGoodProbeElectron()

bool EventReaderBaseAlg::isGoodProbeElectron ( const xAOD::Electron * el)
protectedinherited

Definition at line 157 of file EventReaderBaseAlg.cxx.

157 {
158 // |eta| < 1.475
159 if ( fabs(el->eta()) > 1.475 ){ // EM Barrel
160 ATH_MSG_DEBUG ("(isGoodProbeElectron) Electron |eta| > 1.475 (" << fabs(el->eta()) << ").");
161 return false;
162 }
163
164 // electron object quality
165 ATH_MSG_DEBUG (" (isGoodProbeElectron) Checking Probe electron object quality...");
167 ATH_MSG_DEBUG (" (isGoodProbeElectron) \tProbe Electron is a BADCLUSELECTRON.");
168 return false;
169 }
170
171 // Et > 15 GeV
172 float electronPt = el->pt();
173 if (electronPt * GeV < m_etMinProbe ){
174 ATH_MSG_DEBUG ("(isGoodProbeElectron) Electron Et/pT < " << m_etMinProbe << " GeV (pT="<< electronPt * GeV<<")");
175 return false;
176 }
177
178 // is outside the crack
179 float absEta = fabs(el->caloCluster()->etaBE(2));
180 if ( !isEtaOutsideLArCrack(absEta) ){
181 ATH_MSG_DEBUG ("(isGoodProbeElectron) Electron Eta inside LAr crack region...");
182 return false;
183 }
184
185 // loose ID Cut
186 bool isGood;
187 if (! el->passSelection(isGood, m_offProbeTightness)){
188 ATH_MSG_DEBUG("(isGoodProbeElectron) Misconfiguration: " << m_offProbeTightness << " is not a valid working point for electrons");
189 return false;
190 }
191
192 ATH_MSG_DEBUG ("(isGoodProbeElectron) Electron is a good probe!");
193 return true;
194}
bool isEtaOutsideLArCrack(float absEta)
Gaudi::Property< std::string > m_offProbeTightness
Define the PID for tag electron.
Gaudi::Property< float > m_etMinProbe
define the Pid of Probe from the user
bool absEta(const xAOD::TauJet &tau, float &out)
const uint32_t BADCLUSELECTRON
Definition EgammaDefs.h:116

◆ isReEntrant()

virtual bool AthAlgorithm::isReEntrant ( ) const
inlinefinaloverrideprotectedvirtualinherited

Legacy algorithms are not thread-safe.

Definition at line 111 of file AthAlgorithm.h.

111{ return false; }

◆ isTagElectron()

bool EventReaderBaseAlg::isTagElectron ( const xAOD::Electron * electron)
protectedinherited

Definition at line 116 of file EventReaderBaseAlg.cxx.

116 {
117 // |eta| < 1.475
118 if ( fabs(el->eta()) > 1.475 ){ // EM Barrel
119 ATH_MSG_DEBUG ("(isTagElectron) Electron |eta| > 1.475 (" << fabs(el->eta()) << ").");
120 return false;
121 }
122
123 // LAr crack region
124 // ATH_MSG_DEBUG ("(isTagElectron) Selecting Tag Electron Eta outside crack region...");
125 float absEta = fabs(el->caloCluster()->etaBE(2));
126 if ( !isEtaOutsideLArCrack(absEta) ){
127 ATH_MSG_DEBUG ("(isTagElectron) Selecting Tag Electron Eta is inside crack region.");
128 return false;
129 }
130
131 // Tag electron PID verify if is tight
132 bool isGood;
133 if (! el->passSelection(isGood, m_offTagTightness) ) {
134 ATH_MSG_DEBUG("(isTagElectron) Misconfiguration: " << m_offTagTightness << " is not a valid working point for electrons");
135 return false; // no point in continuing
136 }
137 ATH_MSG_DEBUG("(isTagElectron) Trigger " << m_offTagTightness << " is OK");
138
139 // Et > 25 (or 15) GeV && Et < 180
140 float elTagEt = el->e()/(cosh(el->trackParticle()->eta()));
141 float elTagPt = el->pt();
142 if ( elTagPt < (m_etMinTag * GeV) ){
143 ATH_MSG_DEBUG ("(isTagElectron) Tag Electron Et/pT: "<< elTagEt << "/"<< elTagPt << ", threshold =" << m_etMinTag * GeV << ".");
144 return false;
145 }
146
147 // electron object quality
148 ATH_MSG_DEBUG ("(isTagElectron) Checking electron object quality...");
150 ATH_MSG_DEBUG ("(isTagElectron) \tTag Electron is a BADCLUSELECTRON.");
151 return false;
152 }
153
154 return true;
155}
Gaudi::Property< float > m_etMinTag
Gaudi::Property< std::string > m_offTagTightness

◆ msg()

MsgStream & AthCommonMsg< Gaudi::Algorithm >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24 {
25 return this->msgStream();
26 }

◆ msgLvl()

bool AthCommonMsg< Gaudi::Algorithm >::msgLvl ( const MSG::Level lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30 {
31 return this->msgLevel(lvl);
32 }

◆ outputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ renounce()

std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::renounce ( T & h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381 {
382 h.renounce();
384 }
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::renounceArray ( SG::VarHandleKeyArray & handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364 {
366 }

◆ setFilterPassed() [1/2]

void AthAlgorithm::setFilterPassed ( bool state) const
inherited

Definition at line 102 of file AthAlgorithm.cxx.

102 {
103 setFilterPassed( state, Gaudi::Hive::currentContext() );
104}
void setFilterPassed(bool state) const

◆ setFilterPassed() [2/2]

void AthAlgorithm::setFilterPassed ( bool state,
const EventContext & ctx ) const
inherited

Definition at line 106 of file AthAlgorithm.cxx.

106 {
107 execState( ctx ).setFilterPassed(state);
108}

◆ sysInitialize()

StatusCode AthAlgorithm::sysInitialize ( )
overridevirtualinherited

Override sysInitialize.

Override sysInitialize from the base class.

Loop through all output handles, and if they're WriteCondHandles, automatically register them and this Algorithm with the CondSvc.

Scan through all outputHandles, and if they're WriteCondHandles, register them with the CondSvc

Reimplemented from AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >.

Reimplemented in AthAnalysisAlgorithm, AthFilterAlgorithm, AthHistogramAlgorithm, and PyAthena::Alg.

Definition at line 66 of file AthAlgorithm.cxx.

66 {
68
69 if (sc.isFailure()) {
70 return sc;
71 }
72 ServiceHandle<ICondSvc> cs("CondSvc",name());
73 for (auto h : outputHandles()) {
74 if (h->isCondition() && h->mode() == Gaudi::DataHandle::Writer) {
75 // do this inside the loop so we don't create the CondSvc until needed
76 if ( cs.retrieve().isFailure() ) {
77 ATH_MSG_WARNING("no CondSvc found: won't autoreg WriteCondHandles");
78 return StatusCode::SUCCESS;
79 }
80 if (cs->regHandle(this,*h).isFailure()) {
81 sc = StatusCode::FAILURE;
82 ATH_MSG_ERROR("unable to register WriteCondHandle " << h->fullKey()
83 << " with CondSvc");
84 }
85 }
86 }
87 return sc;
88}
virtual StatusCode sysInitialize() override
Override sysInitialize.
AthCommonDataStore(const std::string &name, T... args)
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ trackSelectionElectrons()

bool EventReaderBaseAlg::trackSelectionElectrons ( const xAOD::Electron * electron,
SG::ReadHandle< xAOD::VertexContainer > & primVertexCnt,
SG::ReadHandle< xAOD::EventInfo > & ei )
protectedinherited

Definition at line 52 of file EventReaderBaseAlg.cxx.

52 {
53
54 const xAOD::TrackParticle *trackElectron = electron->trackParticle();
55 const xAOD::CaloCluster *elClus = electron->caloCluster();
56
57 if (!trackElectron) { //is there track?
58 ATH_MSG_DEBUG ("(trackSelectionElectrons) No track particle for Tag check.");
59 return false;
60 }
61 // caloCluster
62 if (!elClus){ //is there a calo cluster associated to this electron?
63 ATH_MSG_DEBUG ("(trackSelectionElectrons) No caloCluster associated for Tag check.");
64 return false;
65 }
66
67 // track_pt > 7 GeV
68 if (! ( (trackElectron->pt() * GeV ) > 7) ){
69 ATH_MSG_DEBUG ("(trackSelectionElectrons) Pt_Track of the electron is below 7 GeV. Electron rejected.");
70 return false;
71 }
72 // |eta| < 2.47
73 if (! (fabs(trackElectron->eta()) < 2.47 )){
74 ATH_MSG_DEBUG ("(trackSelectionElectrons) Electron track_eta is above 2.47. Electron rejected.");
75 return false;
76 }
77
78 // check for primary vertex in the event
79 // *************** Primary vertex check ***************
80 //loop over vertices and look for good primary vertex
81 bool isPrimVtx = false;
82 bool passDeltaZ0sin = false;
83 // for (xAOD::VertexContainer::const_iterator vxIter = primVertexCnt->begin(); vxIter != primVertexCnt->end(); ++vxIter) {
84 for ( const xAOD::Vertex *vertex : *primVertexCnt){
85 // Select good primary vertex
86 float delta_z0 = fabs(trackElectron->z0() + trackElectron->vz() - vertex->z()); //where trk.vz() represents the point of reference for the z0 calculation (in this case, the beamspot position along the z axis).
87 float delta_z0_sin = delta_z0 * sin(trackElectron->theta()); //where sin(trk.theta()) parameterises the uncertainty of the z0 measurement.
88
89 if ((vertex->vertexType() == xAOD::VxType::PriVtx) && ( delta_z0_sin < m_z0Tag)){
90 isPrimVtx = true; //check for primary vertex in each vertex of the event.
91 passDeltaZ0sin = true; // and check if the longitudinal impact parameter difference for electron-to-vertex association.
92
93 ATH_MSG_DEBUG ("(trackSelectionElectrons) delta_z0_sin < 0.5 mm ("<< delta_z0_sin << ")");
94 ATH_MSG_DEBUG ("(trackSelectionElectrons) There is a primary vertex in the event.");
95 break;
96 }
97 }
98
99 // delta_z0_sin <= 0.5 mm
100 if (!( isPrimVtx && passDeltaZ0sin)){
101 ATH_MSG_DEBUG ("(trackSelectionElectrons) For this Tag, delta_z0_sin > 0.5mm, and there is NO primary vertices in the event. Rejecting electron.");
102 return false;
103 }
104
105 // d0_sig - transverse impact parameter significance
106 double d0sig = fabs (xAOD::TrackingHelpers::d0significance( trackElectron, ei->beamPosSigmaX(), ei->beamPosSigmaY(), ei->beamPosSigmaXY() ));
107 if ( !( d0sig < m_d0TagSig)){
108 ATH_MSG_DEBUG("(trackSelectionElectrons) Electron rejected. |d0sig| > " << m_d0TagSig << " ("<< d0sig <<")");
109 return false;
110 }
111
112 ATH_MSG_DEBUG("(trackSelectionElectrons) Electron accepted.");
113 return true; // if true, add electron to electronSelectionCnt container.
114}
virtual double pt() const override final
The transverse momentum ( ) of the particle.
virtual double eta() const override final
The pseudorapidity ( ) of the particle.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::updateVHKA ( Gaudi::Details::PropertyBase & )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308 {
309 // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310 // << " size: " << m_vhka.size() << endmsg;
311 for (auto &a : m_vhka) {
313 for (auto k : keys) {
314 k->setOwner(this);
315 }
316 }
317 }

Member Data Documentation

◆ m_adc2MeVKey

SG::ReadCondHandleKey<LArADC2MeV> EventReaderAlg::m_adc2MeVKey {this,"ADC2MeVKey","LArADC2MeV","SG Key of ADC2MeV conditions object"}
private

Definition at line 86 of file EventReaderAlg.h.

86{this,"ADC2MeVKey","LArADC2MeV","SG Key of ADC2MeV conditions object"};

◆ m_adc2MeVs

const LArADC2MeV* EventReaderAlg::m_adc2MeVs = nullptr
private

Definition at line 111 of file EventReaderAlg.h.

◆ m_allCaloCellCntSgKey

SG::ReadHandleKey<CaloCellContainer> EventReaderAlg::m_allCaloCellCntSgKey {this, "CaloCellContainerKey", "AllCalo", "Name of the CaloCell container"}
private

Definition at line 104 of file EventReaderAlg.h.

104{this, "CaloCellContainerKey", "AllCalo", "Name of the CaloCell container"};

◆ m_c711_cellDEta

std::vector< double >* EventReaderBaseAlg::m_c711_cellDEta = nullptr
protectedinherited

Definition at line 191 of file EventReaderBaseAlg.h.

◆ m_c711_cellDPhi

std::vector< double >* EventReaderBaseAlg::m_c711_cellDPhi = nullptr
protectedinherited

Definition at line 192 of file EventReaderBaseAlg.h.

◆ m_c711_cellEnergy

std::vector< double >* EventReaderBaseAlg::m_c711_cellEnergy = nullptr
protectedinherited

Definition at line 187 of file EventReaderBaseAlg.h.

◆ m_c711_cellEta

std::vector< double >* EventReaderBaseAlg::m_c711_cellEta = nullptr
protectedinherited

Definition at line 189 of file EventReaderBaseAlg.h.

◆ m_c711_cellGain

std::vector< int >* EventReaderBaseAlg::m_c711_cellGain = nullptr
protectedinherited

Definition at line 184 of file EventReaderBaseAlg.h.

◆ m_c711_cellIndexCounter

int* EventReaderBaseAlg::m_c711_cellIndexCounter = nullptr
protectedinherited

Definition at line 181 of file EventReaderBaseAlg.h.

◆ m_c711_cellLayer

std::vector< int >* EventReaderBaseAlg::m_c711_cellLayer = nullptr
protectedinherited

Definition at line 185 of file EventReaderBaseAlg.h.

◆ m_c711_cellPhi

std::vector< double >* EventReaderBaseAlg::m_c711_cellPhi = nullptr
protectedinherited

Definition at line 190 of file EventReaderBaseAlg.h.

◆ m_c711_cellRegion

std::vector< int >* EventReaderBaseAlg::m_c711_cellRegion = nullptr
protectedinherited

Definition at line 186 of file EventReaderBaseAlg.h.

◆ m_c711_cellTime

std::vector< double >* EventReaderBaseAlg::m_c711_cellTime = nullptr
protectedinherited

Definition at line 188 of file EventReaderBaseAlg.h.

◆ m_c711_cellToClusterDEta

std::vector< double >* EventReaderBaseAlg::m_c711_cellToClusterDEta = nullptr
protectedinherited

Definition at line 194 of file EventReaderBaseAlg.h.

◆ m_c711_cellToClusterDPhi

std::vector< double >* EventReaderBaseAlg::m_c711_cellToClusterDPhi = nullptr
protectedinherited

Definition at line 193 of file EventReaderBaseAlg.h.

◆ m_c711_channelADC2MEV0

std::vector< float >* EventReaderBaseAlg::m_c711_channelADC2MEV0 = nullptr
protectedinherited

Definition at line 214 of file EventReaderBaseAlg.h.

◆ m_c711_channelADC2MEV1

std::vector< float >* EventReaderBaseAlg::m_c711_channelADC2MEV1 = nullptr
protectedinherited

Definition at line 215 of file EventReaderBaseAlg.h.

◆ m_c711_channelBad

std::vector< bool >* EventReaderBaseAlg::m_c711_channelBad = nullptr
protectedinherited

Definition at line 203 of file EventReaderBaseAlg.h.

◆ m_c711_channelChannelIdMap

std::vector< unsigned int >* EventReaderBaseAlg::m_c711_channelChannelIdMap = nullptr
protectedinherited

Definition at line 205 of file EventReaderBaseAlg.h.

◆ m_c711_channelChInfo

std::vector< std::vector < int > >* EventReaderBaseAlg::m_c711_channelChInfo = nullptr
protectedinherited

Definition at line 198 of file EventReaderBaseAlg.h.

◆ m_c711_channelDigits

std::vector< std::vector < float > >* EventReaderBaseAlg::m_c711_channelDigits = nullptr
protectedinherited

Definition at line 199 of file EventReaderBaseAlg.h.

◆ m_c711_channelDSPThreshold

std::vector< float >* EventReaderBaseAlg::m_c711_channelDSPThreshold = nullptr
protectedinherited

Definition at line 208 of file EventReaderBaseAlg.h.

◆ m_c711_channelEffectiveSigma

std::vector< float >* EventReaderBaseAlg::m_c711_channelEffectiveSigma = nullptr
protectedinherited

Definition at line 206 of file EventReaderBaseAlg.h.

◆ m_c711_channelEnergy

std::vector< double >* EventReaderBaseAlg::m_c711_channelEnergy = nullptr
protectedinherited

Definition at line 200 of file EventReaderBaseAlg.h.

◆ m_c711_channelHashMap

std::vector< unsigned int >* EventReaderBaseAlg::m_c711_channelHashMap = nullptr
protectedinherited

Definition at line 204 of file EventReaderBaseAlg.h.

◆ m_c711_channelLayer

std::vector< int >* EventReaderBaseAlg::m_c711_channelLayer = nullptr
protectedinherited

Definition at line 202 of file EventReaderBaseAlg.h.

◆ m_c711_channelMinBiasAvg

std::vector< float >* EventReaderBaseAlg::m_c711_channelMinBiasAvg = nullptr
protectedinherited

Definition at line 217 of file EventReaderBaseAlg.h.

◆ m_c711_channelNoise

std::vector< float >* EventReaderBaseAlg::m_c711_channelNoise = nullptr
protectedinherited

Definition at line 207 of file EventReaderBaseAlg.h.

◆ m_c711_channelOFCa

std::vector< std::vector < double > >* EventReaderBaseAlg::m_c711_channelOFCa = nullptr
protectedinherited

Definition at line 209 of file EventReaderBaseAlg.h.

◆ m_c711_channelOFCb

std::vector< std::vector < double > >* EventReaderBaseAlg::m_c711_channelOFCb = nullptr
protectedinherited

Definition at line 210 of file EventReaderBaseAlg.h.

◆ m_c711_channelOFCTimeOffset

std::vector< double >* EventReaderBaseAlg::m_c711_channelOFCTimeOffset = nullptr
protectedinherited

Definition at line 213 of file EventReaderBaseAlg.h.

◆ m_c711_channelOfflEneRescaler

std::vector< float >* EventReaderBaseAlg::m_c711_channelOfflEneRescaler = nullptr
protectedinherited

Definition at line 219 of file EventReaderBaseAlg.h.

◆ m_c711_channelOfflHVScale

std::vector< float >* EventReaderBaseAlg::m_c711_channelOfflHVScale = nullptr
protectedinherited

Definition at line 218 of file EventReaderBaseAlg.h.

◆ m_c711_channelPed

std::vector< float >* EventReaderBaseAlg::m_c711_channelPed = nullptr
protectedinherited

Definition at line 216 of file EventReaderBaseAlg.h.

◆ m_c711_channelShape

std::vector< std::vector < double > >* EventReaderBaseAlg::m_c711_channelShape = nullptr
protectedinherited

Definition at line 211 of file EventReaderBaseAlg.h.

◆ m_c711_channelShapeDer

std::vector< std::vector < double > >* EventReaderBaseAlg::m_c711_channelShapeDer = nullptr
protectedinherited

Definition at line 212 of file EventReaderBaseAlg.h.

◆ m_c711_channelTime

std::vector< double >* EventReaderBaseAlg::m_c711_channelTime = nullptr
protectedinherited

Definition at line 201 of file EventReaderBaseAlg.h.

◆ m_c711_clusterCellIndex

std::vector< int >* EventReaderBaseAlg::m_c711_clusterCellIndex = nullptr
protectedinherited

Definition at line 183 of file EventReaderBaseAlg.h.

◆ m_c711_clusterChannelIndex

std::vector< int >* EventReaderBaseAlg::m_c711_clusterChannelIndex = nullptr
protectedinherited

Definition at line 197 of file EventReaderBaseAlg.h.

◆ m_c711_clusterEnergy

std::vector< double >* EventReaderBaseAlg::m_c711_clusterEnergy = nullptr
protectedinherited

Definition at line 174 of file EventReaderBaseAlg.h.

◆ m_c711_clusterEta

std::vector< double >* EventReaderBaseAlg::m_c711_clusterEta = nullptr
protectedinherited

Definition at line 176 of file EventReaderBaseAlg.h.

◆ m_c711_clusterIndex

std::vector< int >* EventReaderBaseAlg::m_c711_clusterIndex = nullptr
protectedinherited

Definition at line 172 of file EventReaderBaseAlg.h.

◆ m_c711_clusterIndex_cellLvl

std::vector< int >* EventReaderBaseAlg::m_c711_clusterIndex_cellLvl = nullptr
protectedinherited

Definition at line 182 of file EventReaderBaseAlg.h.

◆ m_c711_clusterIndex_chLvl

std::vector< int >* EventReaderBaseAlg::m_c711_clusterIndex_chLvl = nullptr
protectedinherited

Definition at line 196 of file EventReaderBaseAlg.h.

◆ m_c711_clusterIndex_rawChLvl

std::vector< int >* EventReaderBaseAlg::m_c711_clusterIndex_rawChLvl = nullptr
protectedinherited

Definition at line 230 of file EventReaderBaseAlg.h.

◆ m_c711_clusterIndexCounter

int* EventReaderBaseAlg::m_c711_clusterIndexCounter = 0
protectedinherited

Definition at line 171 of file EventReaderBaseAlg.h.

◆ m_c711_clusterPhi

std::vector< double >* EventReaderBaseAlg::m_c711_clusterPhi = nullptr
protectedinherited

Definition at line 177 of file EventReaderBaseAlg.h.

◆ m_c711_clusterPt

std::vector< double >* EventReaderBaseAlg::m_c711_clusterPt = nullptr
protectedinherited

Definition at line 178 of file EventReaderBaseAlg.h.

◆ m_c711_clusterRawChannelIndex

std::vector< float >* EventReaderBaseAlg::m_c711_clusterRawChannelIndex = nullptr
protectedinherited

Definition at line 229 of file EventReaderBaseAlg.h.

◆ m_c711_clusterTime

std::vector< double >* EventReaderBaseAlg::m_c711_clusterTime = nullptr
protectedinherited

Definition at line 175 of file EventReaderBaseAlg.h.

◆ m_c711_electronIndex_clusterLvl

std::vector< int >* EventReaderBaseAlg::m_c711_electronIndex_clusterLvl = nullptr
protectedinherited

Definition at line 173 of file EventReaderBaseAlg.h.

◆ m_c711_rawChannelAmplitude

std::vector< float >* EventReaderBaseAlg::m_c711_rawChannelAmplitude = nullptr
protectedinherited

Definition at line 223 of file EventReaderBaseAlg.h.

◆ m_c711_rawChannelChInfo

std::vector< std::vector < int > >* EventReaderBaseAlg::m_c711_rawChannelChInfo = nullptr
protectedinherited

Definition at line 221 of file EventReaderBaseAlg.h.

◆ m_c711_rawChannelDSPThreshold

std::vector< float >* EventReaderBaseAlg::m_c711_rawChannelDSPThreshold = nullptr
protectedinherited

Definition at line 231 of file EventReaderBaseAlg.h.

◆ m_c711_rawChannelIdMap

std::vector< unsigned int >* EventReaderBaseAlg::m_c711_rawChannelIdMap = nullptr
protectedinherited

Definition at line 222 of file EventReaderBaseAlg.h.

◆ m_c711_rawChannelLayer

std::vector< int >* EventReaderBaseAlg::m_c711_rawChannelLayer = nullptr
protectedinherited

Definition at line 225 of file EventReaderBaseAlg.h.

◆ m_c711_rawChannelPed

std::vector< float >* EventReaderBaseAlg::m_c711_rawChannelPed = nullptr
protectedinherited

Definition at line 226 of file EventReaderBaseAlg.h.

◆ m_c711_rawChannelProv

std::vector< float >* EventReaderBaseAlg::m_c711_rawChannelProv = nullptr
protectedinherited

Definition at line 227 of file EventReaderBaseAlg.h.

◆ m_c711_rawChannelQuality

std::vector< float >* EventReaderBaseAlg::m_c711_rawChannelQuality = nullptr
protectedinherited

Definition at line 228 of file EventReaderBaseAlg.h.

◆ m_c711_rawChannelTime

std::vector< float >* EventReaderBaseAlg::m_c711_rawChannelTime = nullptr
protectedinherited

Definition at line 224 of file EventReaderBaseAlg.h.

◆ m_c_cellDEta

std::vector< double >* EventReaderBaseAlg::m_c_cellDEta = nullptr
protectedinherited

Definition at line 112 of file EventReaderBaseAlg.h.

◆ m_c_cellDPhi

std::vector< double >* EventReaderBaseAlg::m_c_cellDPhi = nullptr
protectedinherited

Definition at line 113 of file EventReaderBaseAlg.h.

◆ m_c_cellEnergy

std::vector< double >* EventReaderBaseAlg::m_c_cellEnergy = nullptr
protectedinherited

Definition at line 108 of file EventReaderBaseAlg.h.

◆ m_c_cellEta

std::vector< double >* EventReaderBaseAlg::m_c_cellEta = nullptr
protectedinherited

Definition at line 110 of file EventReaderBaseAlg.h.

◆ m_c_cellGain

std::vector< int >* EventReaderBaseAlg::m_c_cellGain = nullptr
protectedinherited

Definition at line 105 of file EventReaderBaseAlg.h.

◆ m_c_cellIndexCounter

int EventReaderBaseAlg::m_c_cellIndexCounter = 0
protectedinherited

Definition at line 102 of file EventReaderBaseAlg.h.

◆ m_c_cellLayer

std::vector< int >* EventReaderBaseAlg::m_c_cellLayer = nullptr
protectedinherited

Definition at line 106 of file EventReaderBaseAlg.h.

◆ m_c_cellPhi

std::vector< double >* EventReaderBaseAlg::m_c_cellPhi = nullptr
protectedinherited

Definition at line 111 of file EventReaderBaseAlg.h.

◆ m_c_cellRegion

std::vector< int >* EventReaderBaseAlg::m_c_cellRegion = nullptr
protectedinherited

Definition at line 107 of file EventReaderBaseAlg.h.

◆ m_c_cellTime

std::vector< double >* EventReaderBaseAlg::m_c_cellTime = nullptr
protectedinherited

Definition at line 109 of file EventReaderBaseAlg.h.

◆ m_c_cellToClusterDEta

std::vector< double >* EventReaderBaseAlg::m_c_cellToClusterDEta = nullptr
protectedinherited

Definition at line 115 of file EventReaderBaseAlg.h.

◆ m_c_cellToClusterDPhi

std::vector< double >* EventReaderBaseAlg::m_c_cellToClusterDPhi = nullptr
protectedinherited

Definition at line 114 of file EventReaderBaseAlg.h.

◆ m_c_channelADC2MEV0

std::vector< float >* EventReaderBaseAlg::m_c_channelADC2MEV0 = nullptr
protectedinherited

Definition at line 135 of file EventReaderBaseAlg.h.

◆ m_c_channelADC2MEV1

std::vector< float >* EventReaderBaseAlg::m_c_channelADC2MEV1 = nullptr
protectedinherited

Definition at line 136 of file EventReaderBaseAlg.h.

◆ m_c_channelBad

std::vector< bool >* EventReaderBaseAlg::m_c_channelBad = nullptr
protectedinherited

Definition at line 124 of file EventReaderBaseAlg.h.

◆ m_c_channelChannelIdMap

std::vector< unsigned int >* EventReaderBaseAlg::m_c_channelChannelIdMap = nullptr
protectedinherited

Definition at line 126 of file EventReaderBaseAlg.h.

◆ m_c_channelChInfo

std::vector< std::vector < int > >* EventReaderBaseAlg::m_c_channelChInfo = nullptr
protectedinherited

Definition at line 119 of file EventReaderBaseAlg.h.

◆ m_c_channelDigits

std::vector< std::vector < float > >* EventReaderBaseAlg::m_c_channelDigits = nullptr
protectedinherited

Definition at line 120 of file EventReaderBaseAlg.h.

◆ m_c_channelDSPThreshold

std::vector< float >* EventReaderBaseAlg::m_c_channelDSPThreshold = nullptr
protectedinherited

Definition at line 129 of file EventReaderBaseAlg.h.

◆ m_c_channelEffectiveSigma

std::vector< float >* EventReaderBaseAlg::m_c_channelEffectiveSigma = nullptr
protectedinherited

Definition at line 127 of file EventReaderBaseAlg.h.

◆ m_c_channelEnergy

std::vector< double >* EventReaderBaseAlg::m_c_channelEnergy = nullptr
protectedinherited

Definition at line 121 of file EventReaderBaseAlg.h.

◆ m_c_channelHashMap

std::vector< unsigned int >* EventReaderBaseAlg::m_c_channelHashMap = nullptr
protectedinherited

Definition at line 125 of file EventReaderBaseAlg.h.

◆ m_c_channelLayer

std::vector< int >* EventReaderBaseAlg::m_c_channelLayer = nullptr
protectedinherited

Definition at line 123 of file EventReaderBaseAlg.h.

◆ m_c_channelMinBiasAvg

std::vector< float >* EventReaderBaseAlg::m_c_channelMinBiasAvg = nullptr
protectedinherited

Definition at line 138 of file EventReaderBaseAlg.h.

◆ m_c_channelNoise

std::vector< float >* EventReaderBaseAlg::m_c_channelNoise = nullptr
protectedinherited

Definition at line 128 of file EventReaderBaseAlg.h.

◆ m_c_channelOFCa

std::vector< std::vector < double > >* EventReaderBaseAlg::m_c_channelOFCa = nullptr
protectedinherited

Definition at line 130 of file EventReaderBaseAlg.h.

◆ m_c_channelOFCb

std::vector< std::vector < double > >* EventReaderBaseAlg::m_c_channelOFCb = nullptr
protectedinherited

Definition at line 131 of file EventReaderBaseAlg.h.

◆ m_c_channelOFCTimeOffset

std::vector< double >* EventReaderBaseAlg::m_c_channelOFCTimeOffset = nullptr
protectedinherited

Definition at line 134 of file EventReaderBaseAlg.h.

◆ m_c_channelOfflEneRescaler

std::vector< float >* EventReaderBaseAlg::m_c_channelOfflEneRescaler = nullptr
protectedinherited

Definition at line 140 of file EventReaderBaseAlg.h.

◆ m_c_channelOfflHVScale

std::vector< float >* EventReaderBaseAlg::m_c_channelOfflHVScale = nullptr
protectedinherited

Definition at line 139 of file EventReaderBaseAlg.h.

◆ m_c_channelPed

std::vector< float >* EventReaderBaseAlg::m_c_channelPed = nullptr
protectedinherited

Definition at line 137 of file EventReaderBaseAlg.h.

◆ m_c_channelShape

std::vector< std::vector < double > >* EventReaderBaseAlg::m_c_channelShape = nullptr
protectedinherited

Definition at line 132 of file EventReaderBaseAlg.h.

◆ m_c_channelShapeDer

std::vector< std::vector < double > >* EventReaderBaseAlg::m_c_channelShapeDer = nullptr
protectedinherited

Definition at line 133 of file EventReaderBaseAlg.h.

◆ m_c_channelTime

std::vector< double >* EventReaderBaseAlg::m_c_channelTime = nullptr
protectedinherited

Definition at line 122 of file EventReaderBaseAlg.h.

◆ m_c_clusterCellIndex

std::vector< int >* EventReaderBaseAlg::m_c_clusterCellIndex = nullptr
protectedinherited

Definition at line 104 of file EventReaderBaseAlg.h.

◆ m_c_clusterChannelIndex

std::vector< int >* EventReaderBaseAlg::m_c_clusterChannelIndex = nullptr
protectedinherited

Definition at line 118 of file EventReaderBaseAlg.h.

◆ m_c_clusterEnergy

std::vector< double >* EventReaderBaseAlg::m_c_clusterEnergy = nullptr
protectedinherited

Definition at line 96 of file EventReaderBaseAlg.h.

◆ m_c_clusterEta

std::vector< double >* EventReaderBaseAlg::m_c_clusterEta = nullptr
protectedinherited

Definition at line 98 of file EventReaderBaseAlg.h.

◆ m_c_clusterIndex

std::vector< int >* EventReaderBaseAlg::m_c_clusterIndex = nullptr
protectedinherited

Definition at line 94 of file EventReaderBaseAlg.h.

◆ m_c_clusterIndex_cellLvl

std::vector< int >* EventReaderBaseAlg::m_c_clusterIndex_cellLvl = nullptr
protectedinherited

Definition at line 103 of file EventReaderBaseAlg.h.

◆ m_c_clusterIndex_chLvl

std::vector< int >* EventReaderBaseAlg::m_c_clusterIndex_chLvl = nullptr
protectedinherited

Definition at line 117 of file EventReaderBaseAlg.h.

◆ m_c_clusterIndex_rawChLvl

std::vector< int >* EventReaderBaseAlg::m_c_clusterIndex_rawChLvl = nullptr
protectedinherited

Definition at line 152 of file EventReaderBaseAlg.h.

◆ m_c_clusterIndexCounter

int EventReaderBaseAlg::m_c_clusterIndexCounter = 0
protectedinherited

Definition at line 93 of file EventReaderBaseAlg.h.

◆ m_c_clusterPhi

std::vector< double >* EventReaderBaseAlg::m_c_clusterPhi = nullptr
protectedinherited

Definition at line 99 of file EventReaderBaseAlg.h.

◆ m_c_clusterPt

std::vector< double >* EventReaderBaseAlg::m_c_clusterPt = nullptr
protectedinherited

Definition at line 100 of file EventReaderBaseAlg.h.

◆ m_c_clusterRawChannelIndex

std::vector< float >* EventReaderBaseAlg::m_c_clusterRawChannelIndex = nullptr
protectedinherited

Definition at line 151 of file EventReaderBaseAlg.h.

◆ m_c_clusterTime

std::vector< double >* EventReaderBaseAlg::m_c_clusterTime = nullptr
protectedinherited

Definition at line 97 of file EventReaderBaseAlg.h.

◆ m_c_electronIndex_clusterLvl

std::vector< int >* EventReaderBaseAlg::m_c_electronIndex_clusterLvl = nullptr
protectedinherited

Definition at line 95 of file EventReaderBaseAlg.h.

◆ m_c_rawChannelAmplitude

std::vector< float >* EventReaderBaseAlg::m_c_rawChannelAmplitude = nullptr
protectedinherited

Definition at line 145 of file EventReaderBaseAlg.h.

◆ m_c_rawChannelChInfo

std::vector< std::vector < int > >* EventReaderBaseAlg::m_c_rawChannelChInfo = nullptr
protectedinherited

Definition at line 143 of file EventReaderBaseAlg.h.

◆ m_c_rawChannelDSPThreshold

std::vector< float >* EventReaderBaseAlg::m_c_rawChannelDSPThreshold = nullptr
protectedinherited

Definition at line 153 of file EventReaderBaseAlg.h.

◆ m_c_rawChannelIdMap

std::vector< unsigned int >* EventReaderBaseAlg::m_c_rawChannelIdMap = nullptr
protectedinherited

Definition at line 144 of file EventReaderBaseAlg.h.

◆ m_c_rawChannelLayer

std::vector< int >* EventReaderBaseAlg::m_c_rawChannelLayer = nullptr
protectedinherited

Definition at line 147 of file EventReaderBaseAlg.h.

◆ m_c_rawChannelPed

std::vector< float >* EventReaderBaseAlg::m_c_rawChannelPed = nullptr
protectedinherited

Definition at line 148 of file EventReaderBaseAlg.h.

◆ m_c_rawChannelProv

std::vector< float >* EventReaderBaseAlg::m_c_rawChannelProv = nullptr
protectedinherited

Definition at line 149 of file EventReaderBaseAlg.h.

◆ m_c_rawChannelQuality

std::vector< float >* EventReaderBaseAlg::m_c_rawChannelQuality = nullptr
protectedinherited

Definition at line 150 of file EventReaderBaseAlg.h.

◆ m_c_rawChannelTime

std::vector< float >* EventReaderBaseAlg::m_c_rawChannelTime = nullptr
protectedinherited

Definition at line 146 of file EventReaderBaseAlg.h.

◆ m_calocell_id

const CaloCell_ID* EventReaderAlg::m_calocell_id = nullptr
private

Definition at line 126 of file EventReaderAlg.h.

◆ m_caloClusSgKey

SG::ReadHandleKey<xAOD::CaloClusterContainer> EventReaderAlg::m_caloClusSgKey {this, "CaloClusterContainerKey", "CaloCalTopoClusters", "Name of the CaloCluster Container"}
private

Definition at line 96 of file EventReaderAlg.h.

96{this, "CaloClusterContainerKey", "CaloCalTopoClusters", "Name of the CaloCluster Container"};

◆ m_caloIdMgr

const CaloIdManager* EventReaderAlg::m_caloIdMgr = nullptr
private

Definition at line 122 of file EventReaderAlg.h.

◆ m_d0TagSig

Gaudi::Property<float> EventReaderBaseAlg::m_d0TagSig {this, "d0TagSig", 5, "d_0 transverse impact parameter significance."}
protectedinherited

Definition at line 56 of file EventReaderBaseAlg.h.

56{this, "d0TagSig", 5, "d_0 transverse impact parameter significance."};

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default).

Definition at line 393 of file AthCommonDataStore.h.

◆ m_doAssocTopoCluster711Dump

Gaudi::Property<bool> EventReaderBaseAlg::m_doAssocTopoCluster711Dump {this, "doAssocTopoCluster711Dump", false, "Dump the 7x11 EMB2 window cells."}
protectedinherited

Definition at line 67 of file EventReaderBaseAlg.h.

67{this, "doAssocTopoCluster711Dump", false, "Dump the 7x11 EMB2 window cells."};

◆ m_doClusterDump

Gaudi::Property<bool> EventReaderAlg::m_doClusterDump {this, "doClusterDump", false, "Perform a cluster cell dump based on Cluster Container name m_clusterName"}
private

Definition at line 68 of file EventReaderAlg.h.

68{this, "doClusterDump", false, "Perform a cluster cell dump based on Cluster Container name m_clusterName"};

◆ m_doElecSelectByTrackOnly

Gaudi::Property<bool> EventReaderBaseAlg::m_doElecSelectByTrackOnly {this, "doElecSelectByTrackOnly", false, "Perform electron selection by track only, witout tag and probe."}
protectedinherited

Definition at line 58 of file EventReaderBaseAlg.h.

58{this, "doElecSelectByTrackOnly", false, "Perform electron selection by track only, witout tag and probe."};

◆ m_doLArEMBHitsDump

Gaudi::Property<bool> EventReaderBaseAlg::m_doLArEMBHitsDump {this, "doLArEMBHitsDump", false, "Dump the EMB HITs container energy and time."}
protectedinherited

Definition at line 63 of file EventReaderBaseAlg.h.

63{this, "doLArEMBHitsDump", false, "Dump the EMB HITs container energy and time."};

◆ m_doPhotonDump

Gaudi::Property<bool> EventReaderBaseAlg::m_doPhotonDump {this, "doPhotonDump", false, "Perform a photon particle dump based on offline Photons Container."}
protectedinherited

Definition at line 60 of file EventReaderBaseAlg.h.

60{this, "doPhotonDump", false, "Perform a photon particle dump based on offline Photons Container."};

◆ m_doTagAndProbe

Gaudi::Property<bool> EventReaderBaseAlg::m_doTagAndProbe {this, "doTagAndProbe", true, "First, the electrons are selected by track criteria, then, perform Tag and Probe selection for Zee."}
protectedinherited

Definition at line 59 of file EventReaderBaseAlg.h.

59{this, "doTagAndProbe", true, "First, the electrons are selected by track criteria, then, perform Tag and Probe selection for Zee."};

◆ m_doTruthEventDump

Gaudi::Property<bool> EventReaderBaseAlg::m_doTruthEventDump {this, "doTruthEventDump", false, "Dump the Truth Event variables."}
protectedinherited

Definition at line 61 of file EventReaderBaseAlg.h.

61{this, "doTruthEventDump", false, "Dump the Truth Event variables."};

◆ m_doTruthPartDump

Gaudi::Property<bool> EventReaderBaseAlg::m_doTruthPartDump {this, "doTruthPartDump", false, "Perform a truth particle dump."}
protectedinherited

Definition at line 62 of file EventReaderBaseAlg.h.

62{this, "doTruthPartDump", false, "Perform a truth particle dump."};

◆ m_e_bcid

unsigned int EventReaderBaseAlg::m_e_bcid = 9999
protectedinherited

Definition at line 86 of file EventReaderBaseAlg.h.

◆ m_e_eventNumber

unsigned long long EventReaderBaseAlg::m_e_eventNumber = 9999
protectedinherited

Definition at line 87 of file EventReaderBaseAlg.h.

◆ m_e_inTimePileup

float EventReaderBaseAlg::m_e_inTimePileup = -999
protectedinherited

Definition at line 89 of file EventReaderBaseAlg.h.

◆ m_e_lumiBlock

int EventReaderBaseAlg::m_e_lumiBlock = 999
protectedinherited

Definition at line 88 of file EventReaderBaseAlg.h.

◆ m_e_outOfTimePileUp

float EventReaderBaseAlg::m_e_outOfTimePileUp = -999
protectedinherited

Definition at line 90 of file EventReaderBaseAlg.h.

◆ m_e_runNumber

unsigned int EventReaderBaseAlg::m_e_runNumber = 9999
protectedinherited

Definition at line 85 of file EventReaderBaseAlg.h.

◆ m_el_deltae

std::vector< float >* EventReaderBaseAlg::m_el_deltae = nullptr
protectedinherited

Definition at line 288 of file EventReaderBaseAlg.h.

◆ m_el_e277

std::vector< float >* EventReaderBaseAlg::m_el_e277 = nullptr
protectedinherited

Definition at line 285 of file EventReaderBaseAlg.h.

◆ m_el_eoverp

std::vector< float >* EventReaderBaseAlg::m_el_eoverp = nullptr
protectedinherited

Definition at line 276 of file EventReaderBaseAlg.h.

◆ m_el_eratio

std::vector< float >* EventReaderBaseAlg::m_el_eratio = nullptr
protectedinherited

Definition at line 280 of file EventReaderBaseAlg.h.

◆ m_el_et

std::vector< float >* EventReaderBaseAlg::m_el_et = nullptr
protectedinherited

Definition at line 272 of file EventReaderBaseAlg.h.

◆ m_el_Eta

std::vector< float >* EventReaderBaseAlg::m_el_Eta = nullptr
protectedinherited

Definition at line 273 of file EventReaderBaseAlg.h.

◆ m_el_f1

std::vector< float >* EventReaderBaseAlg::m_el_f1 = nullptr
protectedinherited

Definition at line 278 of file EventReaderBaseAlg.h.

◆ m_el_f3

std::vector< float >* EventReaderBaseAlg::m_el_f3 = nullptr
protectedinherited

Definition at line 279 of file EventReaderBaseAlg.h.

◆ m_el_fracs1

std::vector< float >* EventReaderBaseAlg::m_el_fracs1 = nullptr
protectedinherited

Definition at line 283 of file EventReaderBaseAlg.h.

◆ m_el_index

std::vector< int >* EventReaderBaseAlg::m_el_index = nullptr
protectedinherited

Definition at line 270 of file EventReaderBaseAlg.h.

◆ m_el_m

std::vector< float >* EventReaderBaseAlg::m_el_m = nullptr
protectedinherited

Definition at line 275 of file EventReaderBaseAlg.h.

◆ m_el_Phi

std::vector< float >* EventReaderBaseAlg::m_el_Phi = nullptr
protectedinherited

Definition at line 274 of file EventReaderBaseAlg.h.

◆ m_el_Pt

std::vector< float >* EventReaderBaseAlg::m_el_Pt = nullptr
protectedinherited

Definition at line 271 of file EventReaderBaseAlg.h.

◆ m_el_reta

std::vector< float >* EventReaderBaseAlg::m_el_reta = nullptr
protectedinherited

Definition at line 286 of file EventReaderBaseAlg.h.

◆ m_el_rhad

std::vector< float >* EventReaderBaseAlg::m_el_rhad = nullptr
protectedinherited

Definition at line 289 of file EventReaderBaseAlg.h.

◆ m_el_rhad1

std::vector< float >* EventReaderBaseAlg::m_el_rhad1 = nullptr
protectedinherited

Definition at line 290 of file EventReaderBaseAlg.h.

◆ m_el_rphi

std::vector< float >* EventReaderBaseAlg::m_el_rphi = nullptr
protectedinherited

Definition at line 287 of file EventReaderBaseAlg.h.

◆ m_el_weta1

std::vector< float >* EventReaderBaseAlg::m_el_weta1 = nullptr
protectedinherited

Definition at line 281 of file EventReaderBaseAlg.h.

◆ m_el_weta2

std::vector< float >* EventReaderBaseAlg::m_el_weta2 = nullptr
protectedinherited

Definition at line 282 of file EventReaderBaseAlg.h.

◆ m_el_wtots1

std::vector< float >* EventReaderBaseAlg::m_el_wtots1 = nullptr
protectedinherited

Definition at line 284 of file EventReaderBaseAlg.h.

◆ m_elecEtaCut

Gaudi::Property<float> EventReaderBaseAlg::m_elecEtaCut {this, "electronEtaCut", 1.4, "Electron |eta| cut value."}
protectedinherited

Definition at line 51 of file EventReaderBaseAlg.h.

51{this, "electronEtaCut", 1.4, "Electron |eta| cut value."};

◆ m_electronCntSgKey

SG::ReadHandleKey<xAOD::ElectronContainer> EventReaderAlg::m_electronCntSgKey {this, "ElectronContainerKey", "Electrons", "Name of the Electrons Container"}
private

Definition at line 99 of file EventReaderAlg.h.

99{this, "ElectronContainerKey", "Electrons", "Name of the Electrons Container"};

◆ m_EneRescaler

const CaloCondBlobFlt* EventReaderAlg::m_EneRescaler = nullptr
private

Definition at line 116 of file EventReaderAlg.h.

◆ m_EneRescalerFldr

SG::ReadCondHandleKey<AthenaAttributeList> EventReaderAlg::m_EneRescalerFldr {this,"OflEneRescalerKey","/LAR/CellCorrOfl/EnergyCorr", "Key (=foldername) of AttrListCollection"}
private

Definition at line 83 of file EventReaderAlg.h.

83{this,"OflEneRescalerKey","/LAR/CellCorrOfl/EnergyCorr", "Key (=foldername) of AttrListCollection"};

◆ m_etMinProbe

Gaudi::Property<float> EventReaderBaseAlg::m_etMinProbe {this, "etMinProbe", 15 ,"Min electron Pt value for Zee probe selection loose (GeV)."}
protectedinherited

define the Pid of Probe from the user

Definition at line 54 of file EventReaderBaseAlg.h.

54{this, "etMinProbe", 15 ,"Min electron Pt value for Zee probe selection loose (GeV)."}; // Et or pT ?

◆ m_etMinTag

Gaudi::Property<float> EventReaderBaseAlg::m_etMinTag {this, "etMinTag", 15 ,"Min Et value for the electrons in Zee tag selection (GeV)."}
protectedinherited

Definition at line 55 of file EventReaderBaseAlg.h.

55{this, "etMinTag", 15 ,"Min Et value for the electrons in Zee tag selection (GeV)."}; // Et?

◆ m_eventInfoSgKey

SG::ReadHandleKey<xAOD::EventInfo> EventReaderAlg::m_eventInfoSgKey {this, "EventInfoContainerKey", "EventInfo", "Name of the EventInfo Container"}
private

Definition at line 94 of file EventReaderAlg.h.

94{this, "EventInfoContainerKey", "EventInfo", "Name of the EventInfo Container"};

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default).

Definition at line 390 of file AthCommonDataStore.h.

◆ m_extendedExtraObjects

DataObjIDColl AthAlgorithm::m_extendedExtraObjects
privateinherited

Definition at line 114 of file AthAlgorithm.h.

◆ m_fSampl

const ILArfSampl* EventReaderAlg::m_fSampl = nullptr
private

Definition at line 117 of file EventReaderAlg.h.

◆ m_fSamplKey

SG::ReadCondHandleKey<ILArfSampl> EventReaderAlg::m_fSamplKey {this, "fSamplKey", "LArfSamplSym","SG key of LArfSampl object."}
private

Definition at line 91 of file EventReaderAlg.h.

91{this, "fSamplKey", "LArfSamplSym","SG key of LArfSampl object."};

◆ m_getAssociatedTopoCluster

Gaudi::Property<bool> EventReaderAlg::m_getAssociatedTopoCluster {this, "getAssociatedTopoCluster", true, "Get the topo cluster associated to a super cluster, which was linked to an Electron."}
private

Definition at line 69 of file EventReaderAlg.h.

69{this, "getAssociatedTopoCluster", true, "Get the topo cluster associated to a super cluster, which was linked to an Electron."};

◆ m_getLArCalibConstants

Gaudi::Property<bool> EventReaderBaseAlg::m_getLArCalibConstants {this, "getLArCalibConstants", false, "Get the LAr calorimeter calibration constants, related to cells energy and time (online and offline)."}
protectedinherited

Definition at line 65 of file EventReaderBaseAlg.h.

65{this, "getLArCalibConstants", false, "Get the LAr calorimeter calibration constants, related to cells energy and time (online and offline)."};

◆ m_hits_cellEta

std::vector< double >* EventReaderBaseAlg::m_hits_cellEta = nullptr
protectedinherited

Definition at line 166 of file EventReaderBaseAlg.h.

◆ m_hits_cellPhi

std::vector< double >* EventReaderBaseAlg::m_hits_cellPhi = nullptr
protectedinherited

Definition at line 167 of file EventReaderBaseAlg.h.

◆ m_hits_clusterChannelIndex

std::vector< int >* EventReaderBaseAlg::m_hits_clusterChannelIndex = nullptr
protectedinherited

Definition at line 160 of file EventReaderBaseAlg.h.

◆ m_hits_clusterIndex_chLvl

std::vector< int >* EventReaderBaseAlg::m_hits_clusterIndex_chLvl = nullptr
protectedinherited

Definition at line 159 of file EventReaderBaseAlg.h.

◆ m_hits_energy

std::vector< double >* EventReaderBaseAlg::m_hits_energy = nullptr
protectedinherited

Definition at line 162 of file EventReaderBaseAlg.h.

◆ m_hits_energyConv

std::vector< double >* EventReaderBaseAlg::m_hits_energyConv = nullptr
protectedinherited

Definition at line 165 of file EventReaderBaseAlg.h.

◆ m_hits_hash

std::vector< unsigned int >* EventReaderBaseAlg::m_hits_hash = nullptr
protectedinherited

Definition at line 161 of file EventReaderBaseAlg.h.

◆ m_hits_sampFrac

std::vector< float >* EventReaderBaseAlg::m_hits_sampFrac = nullptr
protectedinherited

Definition at line 164 of file EventReaderBaseAlg.h.

◆ m_hits_sampling

std::vector< int >* EventReaderBaseAlg::m_hits_sampling = nullptr
protectedinherited

Definition at line 158 of file EventReaderBaseAlg.h.

◆ m_hits_time

std::vector< double >* EventReaderBaseAlg::m_hits_time = nullptr
protectedinherited

Definition at line 163 of file EventReaderBaseAlg.h.

◆ m_isMC

Gaudi::Property<bool> EventReaderBaseAlg::m_isMC {this, "isMC", false, "Switch the dumper to MC sample mode."}
protectedinherited

Definition at line 64 of file EventReaderBaseAlg.h.

64{this, "isMC", false, "Switch the dumper to MC sample mode."};

◆ m_larCabling

const LArOnOffIdMapping* EventReaderAlg::m_larCabling = nullptr
private

Definition at line 121 of file EventReaderAlg.h.

◆ m_larCablingKey

SG::ReadCondHandleKey<LArOnOffIdMapping> EventReaderAlg::m_larCablingKey {this,"LArOnOffMapKey","LArOnOffIdMap"," SG Key of LArOnOffIdMapping object."}
private

Definition at line 92 of file EventReaderAlg.h.

92{this,"LArOnOffMapKey","LArOnOffIdMap"," SG Key of LArOnOffIdMapping object."};

◆ m_larDigitCntSgKey

SG::ReadHandleKey<LArDigitContainer> EventReaderAlg::m_larDigitCntSgKey {this, "LArDigitContainerKey", "LArDigitContainer_MC", "Name of the LArDigits container"}
private

Definition at line 102 of file EventReaderAlg.h.

102{this, "LArDigitContainerKey", "LArDigitContainer_MC", "Name of the LArDigits container"};

◆ m_larem_id

const LArEM_ID* EventReaderAlg::m_larem_id = nullptr
private

Definition at line 123 of file EventReaderAlg.h.

◆ m_larEMBHitCntSgKey

SG::ReadHandleKey<LArHitContainer> EventReaderAlg::m_larEMBHitCntSgKey {this, "LArEMBHitContainerKey", "LArHitEMB", "Name of the LArHitEMB container"}
private

Definition at line 101 of file EventReaderAlg.h.

101{this, "LArEMBHitContainerKey", "LArHitEMB", "Name of the LArHitEMB container"};

◆ m_larfcal_id

const LArFCAL_ID* EventReaderAlg::m_larfcal_id = nullptr
private

Definition at line 125 of file EventReaderAlg.h.

◆ m_larhec_id

const LArHEC_ID* EventReaderAlg::m_larhec_id = nullptr
private

Definition at line 124 of file EventReaderAlg.h.

◆ m_larRawChCntSgKey

SG::ReadHandleKey<LArRawChannelContainer> EventReaderAlg::m_larRawChCntSgKey {this, "LArRawChannelContainerKey", "LArRawChannels", "Name of the LArRawChannel container"}
private

Definition at line 103 of file EventReaderAlg.h.

103{this, "LArRawChannelContainerKey", "LArRawChannels", "Name of the LArRawChannel container"};

◆ m_lb_bcidLuminosity

std::vector< std::vector < float > >* EventReaderBaseAlg::m_lb_bcidLuminosity = nullptr
protectedinherited

Definition at line 81 of file EventReaderBaseAlg.h.

◆ m_lb_lumiblock

std::vector< int >* EventReaderBaseAlg::m_lb_lumiblock = nullptr
protectedinherited

Definition at line 82 of file EventReaderBaseAlg.h.

◆ m_lumiDataKey

SG::ReadCondHandleKey<LuminosityCondData> EventReaderAlg::m_lumiDataKey {this,"LumiKey", "LuminosityCondData","SG Key of LuminosityCondData object"}
private

Definition at line 84 of file EventReaderAlg.h.

84{this,"LumiKey", "LuminosityCondData","SG Key of LuminosityCondData object"};

◆ m_lumis

const LuminosityCondData* EventReaderAlg::m_lumis = nullptr
private

Definition at line 109 of file EventReaderAlg.h.

◆ m_maxZeeMassTP

Gaudi::Property<float> EventReaderAlg::m_maxZeeMassTP {this, "maxZeeMassTP", 116, "Maximum value of Zee mass for checking the TP pairs (GeV)."}
private

Definition at line 72 of file EventReaderAlg.h.

72{this, "maxZeeMassTP", 116, "Maximum value of Zee mass for checking the TP pairs (GeV)."};

◆ m_mc_part_energy

std::vector< float >* EventReaderBaseAlg::m_mc_part_energy = nullptr
protectedinherited

Definition at line 234 of file EventReaderBaseAlg.h.

◆ m_mc_part_eta

std::vector< float >* EventReaderBaseAlg::m_mc_part_eta = nullptr
protectedinherited

Definition at line 237 of file EventReaderBaseAlg.h.

◆ m_mc_part_m

std::vector< float >* EventReaderBaseAlg::m_mc_part_m = nullptr
protectedinherited

Definition at line 236 of file EventReaderBaseAlg.h.

◆ m_mc_part_pdgId

std::vector< int >* EventReaderBaseAlg::m_mc_part_pdgId = nullptr
protectedinherited

Definition at line 239 of file EventReaderBaseAlg.h.

◆ m_mc_part_phi

std::vector< float >* EventReaderBaseAlg::m_mc_part_phi = nullptr
protectedinherited

Definition at line 238 of file EventReaderBaseAlg.h.

◆ m_mc_part_pt

std::vector< float >* EventReaderBaseAlg::m_mc_part_pt = nullptr
protectedinherited

Definition at line 235 of file EventReaderBaseAlg.h.

◆ m_mc_part_status

std::vector< int >* EventReaderBaseAlg::m_mc_part_status = nullptr
protectedinherited

Definition at line 240 of file EventReaderBaseAlg.h.

◆ m_mc_part_uniqueID

std::vector< int >* EventReaderBaseAlg::m_mc_part_uniqueID = nullptr
protectedinherited

Definition at line 241 of file EventReaderBaseAlg.h.

◆ m_mc_vert_eta

std::vector< float >* EventReaderBaseAlg::m_mc_vert_eta = nullptr
protectedinherited

Definition at line 249 of file EventReaderBaseAlg.h.

◆ m_mc_vert_perp

std::vector< float >* EventReaderBaseAlg::m_mc_vert_perp = nullptr
protectedinherited

Definition at line 248 of file EventReaderBaseAlg.h.

◆ m_mc_vert_phi

std::vector< float >* EventReaderBaseAlg::m_mc_vert_phi = nullptr
protectedinherited

Definition at line 250 of file EventReaderBaseAlg.h.

◆ m_mc_vert_status

std::vector< int >* EventReaderBaseAlg::m_mc_vert_status = nullptr
protectedinherited

Definition at line 252 of file EventReaderBaseAlg.h.

◆ m_mc_vert_time

std::vector< float >* EventReaderBaseAlg::m_mc_vert_time = nullptr
protectedinherited

Definition at line 247 of file EventReaderBaseAlg.h.

◆ m_mc_vert_uniqueID

std::vector< int >* EventReaderBaseAlg::m_mc_vert_uniqueID = nullptr
protectedinherited

Definition at line 251 of file EventReaderBaseAlg.h.

◆ m_mc_vert_x

std::vector< float >* EventReaderBaseAlg::m_mc_vert_x = nullptr
protectedinherited

Definition at line 244 of file EventReaderBaseAlg.h.

◆ m_mc_vert_y

std::vector< float >* EventReaderBaseAlg::m_mc_vert_y = nullptr
protectedinherited

Definition at line 245 of file EventReaderBaseAlg.h.

◆ m_mc_vert_z

std::vector< float >* EventReaderBaseAlg::m_mc_vert_z = nullptr
protectedinherited

Definition at line 246 of file EventReaderBaseAlg.h.

◆ m_minBiasAvgKey

SG::ReadCondHandleKey<ILArMinBiasAverage> EventReaderAlg::m_minBiasAvgKey {this, "MinBiasAvgKey", "LArPileupAverageSym", "SGKey of LArMinBiasAverage object"}
private

Definition at line 89 of file EventReaderAlg.h.

89{this, "MinBiasAvgKey", "LArPileupAverageSym", "SGKey of LArMinBiasAverage object"};

◆ m_minBiasAvgs

const ILArMinBiasAverage* EventReaderAlg::m_minBiasAvgs = nullptr
private

Definition at line 114 of file EventReaderAlg.h.

◆ m_minEnergy

const double EventReaderBaseAlg::m_minEnergy = 1e-9
protectedinherited

Definition at line 157 of file EventReaderBaseAlg.h.

◆ m_minZeeMassTP

Gaudi::Property<float> EventReaderAlg::m_minZeeMassTP {this, "minZeeMassTP", 66, "Minimum value of Zee mass for checking the TP pairs (GeV)."}
private

Definition at line 71 of file EventReaderAlg.h.

71{this, "minZeeMassTP", 66, "Minimum value of Zee mass for checking the TP pairs (GeV)."};

◆ m_myElecSelectionSgKey

SG::ReadHandleKey<xAOD::ElectronContainer> EventReaderAlg::m_myElecSelectionSgKey {this, "MyElectronSelectionKey", "MySelectedElectrons", "Name of the MySelectedElectrons Container"}
private

Definition at line 97 of file EventReaderAlg.h.

97{this, "MyElectronSelectionKey", "MySelectedElectrons", "Name of the MySelectedElectrons Container"};

◆ m_ncell

size_t EventReaderBaseAlg::m_ncell = 0
protectedinherited

Definition at line 156 of file EventReaderBaseAlg.h.

◆ m_noBadCells

Gaudi::Property<bool> EventReaderBaseAlg::m_noBadCells {this, "noBadCells", true, "If True, skip the cells tagged as badCells/channels."}
protectedinherited

Definition at line 66 of file EventReaderBaseAlg.h.

66{this, "noBadCells", true, "If True, skip the cells tagged as badCells/channels."};

◆ m_noiseCDO

const CaloNoise* EventReaderAlg::m_noiseCDO = nullptr
private

Definition at line 108 of file EventReaderAlg.h.

◆ m_noiseCDOKey

SG::ReadCondHandleKey<CaloNoise> EventReaderAlg::m_noiseCDOKey {this,"CaloNoiseKey","totalNoise","SG Key of CaloNoise data object"}
private

Definition at line 81 of file EventReaderAlg.h.

81{this,"CaloNoiseKey","totalNoise","SG Key of CaloNoise data object"};

◆ m_ntsvc

ServiceHandle<ITHistSvc> EventReaderAlg::m_ntsvc
private

Definition at line 78 of file EventReaderAlg.h.

◆ m_ofcKey

SG::ReadCondHandleKey<ILArOFC> EventReaderAlg::m_ofcKey {this,"OFCKey","LArOFC","SG Key of OFC conditions object"}
private

Definition at line 87 of file EventReaderAlg.h.

87{this,"OFCKey","LArOFC","SG Key of OFC conditions object"};

◆ m_ofcs

const ILArOFC* EventReaderAlg::m_ofcs = nullptr
private

Definition at line 112 of file EventReaderAlg.h.

◆ m_offlineHVScaleCorrKey

SG::ReadCondHandleKey<LArHVCorr> EventReaderAlg::m_offlineHVScaleCorrKey {this, "keyOfflineHVCorr", "LArHVScaleCorrRecomputed","Key for LArHVScaleCorr"}
private

Definition at line 90 of file EventReaderAlg.h.

90{this, "keyOfflineHVCorr", "LArHVScaleCorrRecomputed","Key for LArHVScaleCorr"};

◆ m_offProbeTightness

Gaudi::Property<std::string> EventReaderBaseAlg::m_offProbeTightness {this, "offProbeTightness", "Loose"}
protectedinherited

Define the PID for tag electron.

Definition at line 53 of file EventReaderBaseAlg.h.

53{this, "offProbeTightness", "Loose"};

◆ m_offTagTightness

Gaudi::Property<std::string> EventReaderBaseAlg::m_offTagTightness {this, "offTagTightness", "LHMedium"}
protectedinherited

Definition at line 52 of file EventReaderBaseAlg.h.

52{this, "offTagTightness", "LHMedium"};

◆ m_oflHVCorr

const LArHVCorr* EventReaderAlg::m_oflHVCorr = nullptr
private

Definition at line 115 of file EventReaderAlg.h.

◆ m_onlineLArID

const LArOnlineID* EventReaderAlg::m_onlineLArID = nullptr
private

Definition at line 120 of file EventReaderAlg.h.

◆ m_pedestalKey

SG::ReadCondHandleKey<ILArPedestal> EventReaderAlg::m_pedestalKey {this,"PedestalKey","LArPedestal","SG Key of Pedestal conditions object"}
private

Definition at line 85 of file EventReaderAlg.h.

85{this,"PedestalKey","LArPedestal","SG Key of Pedestal conditions object"};

◆ m_peds

const ILArPedestal* EventReaderAlg::m_peds = nullptr
private

Definition at line 110 of file EventReaderAlg.h.

◆ m_ph_energy

std::vector< float >* EventReaderBaseAlg::m_ph_energy = nullptr
protectedinherited

Definition at line 266 of file EventReaderBaseAlg.h.

◆ m_ph_eta

std::vector< float >* EventReaderBaseAlg::m_ph_eta = nullptr
protectedinherited

Definition at line 263 of file EventReaderBaseAlg.h.

◆ m_ph_m

std::vector< float >* EventReaderBaseAlg::m_ph_m = nullptr
protectedinherited

Definition at line 267 of file EventReaderBaseAlg.h.

◆ m_ph_phi

std::vector< float >* EventReaderBaseAlg::m_ph_phi = nullptr
protectedinherited

Definition at line 264 of file EventReaderBaseAlg.h.

◆ m_ph_pt

std::vector< float >* EventReaderBaseAlg::m_ph_pt = nullptr
protectedinherited

Definition at line 265 of file EventReaderBaseAlg.h.

◆ m_primVertSgKey

SG::ReadHandleKey<xAOD::VertexContainer> EventReaderAlg::m_primVertSgKey {this, "PrimaryVertexContainerKey", "PrimaryVertices", "Name of the PrimaryVertices Container"}
private

Definition at line 95 of file EventReaderAlg.h.

95{this, "PrimaryVertexContainerKey", "PrimaryVertices", "Name of the PrimaryVertices Container"};

◆ m_printCellsClus

Gaudi::Property<bool> EventReaderAlg::m_printCellsClus {this, "printCellsClus", false, "Print out the cluster cells basic info during the dump."}
private

Definition at line 67 of file EventReaderAlg.h.

67{this, "printCellsClus", false, "Print out the cluster cells basic info during the dump."};

◆ m_run2DSPThresh

std::unique_ptr<LArDSPThresholdsFlat> EventReaderAlg::m_run2DSPThresh = nullptr
private

Definition at line 106 of file EventReaderAlg.h.

◆ m_run2DSPThresholdsKey

SG::ReadCondHandleKey<AthenaAttributeList> EventReaderAlg::m_run2DSPThresholdsKey {this, "Run2DSPThresholdsKey","", "SG Key for thresholds to compute time and quality, run 2"}
private

Definition at line 82 of file EventReaderAlg.h.

82{this, "Run2DSPThresholdsKey","", "SG Key for thresholds to compute time and quality, run 2"};

◆ m_secondTree

TTree* EventReaderBaseAlg::m_secondTree {}
protectedinherited

Definition at line 74 of file EventReaderBaseAlg.h.

74{};

◆ m_shapeKey

SG::ReadCondHandleKey<ILArShape> EventReaderAlg::m_shapeKey {this,"ShapeKey","LArShape","SG Key of Shape conditions object"}
private

Definition at line 88 of file EventReaderAlg.h.

88{this,"ShapeKey","LArShape","SG Key of Shape conditions object"};

◆ m_shapes

const ILArShape* EventReaderAlg::m_shapes = nullptr
private

Definition at line 113 of file EventReaderAlg.h.

◆ m_skipEmptyEvents

Gaudi::Property<bool> EventReaderAlg::m_skipEmptyEvents {this, "skipEmptyEvents", true, "If true, do not fill the event that has no reco electrons."}
private

Definition at line 70 of file EventReaderAlg.h.

70{this, "skipEmptyEvents", true, "If true, do not fill the event that has no reco electrons."};

◆ m_tp_electronEt

std::vector< float >* EventReaderBaseAlg::m_tp_electronEt = nullptr
protectedinherited

Definition at line 294 of file EventReaderBaseAlg.h.

◆ m_tp_electronEta

std::vector< float >* EventReaderBaseAlg::m_tp_electronEta = nullptr
protectedinherited

Definition at line 295 of file EventReaderBaseAlg.h.

◆ m_tp_electronPhi

std::vector< float >* EventReaderBaseAlg::m_tp_electronPhi = nullptr
protectedinherited

Definition at line 296 of file EventReaderBaseAlg.h.

◆ m_tp_electronPt

std::vector< float >* EventReaderBaseAlg::m_tp_electronPt = nullptr
protectedinherited

Definition at line 293 of file EventReaderBaseAlg.h.

◆ m_tp_isProbe

std::vector< bool >* EventReaderBaseAlg::m_tp_isProbe = nullptr
protectedinherited

Definition at line 301 of file EventReaderBaseAlg.h.

◆ m_tp_isTag

std::vector< bool >* EventReaderBaseAlg::m_tp_isTag = nullptr
protectedinherited

Definition at line 300 of file EventReaderBaseAlg.h.

◆ m_tp_probeIndex

std::vector< int >* EventReaderBaseAlg::m_tp_probeIndex = nullptr
protectedinherited

Definition at line 298 of file EventReaderBaseAlg.h.

◆ m_tp_tagIndex

std::vector< int >* EventReaderBaseAlg::m_tp_tagIndex = nullptr
protectedinherited

Definition at line 299 of file EventReaderBaseAlg.h.

◆ m_Tree

TTree* EventReaderBaseAlg::m_Tree {}
protectedinherited

Definition at line 73 of file EventReaderBaseAlg.h.

73{};

◆ m_truthEventCntSgKey

SG::ReadHandleKey<xAOD::TruthEventContainer> EventReaderAlg::m_truthEventCntSgKey {this, "TruthEventContainerKey", "TruthEvents", "Name of the TruthEvents Container"}
private

Definition at line 100 of file EventReaderAlg.h.

100{this, "TruthEventContainerKey", "TruthEvents", "Name of the TruthEvents Container"};

◆ m_truthParticleCntSgKey

SG::ReadHandleKey<xAOD::TruthParticleContainer> EventReaderAlg::m_truthParticleCntSgKey {this, "TruthParticleContainerKey", "TruthParticles", "Name of the TruthParticles Container"}
private

Definition at line 98 of file EventReaderAlg.h.

98{this, "TruthParticleContainerKey", "TruthParticles", "Name of the TruthParticles Container"};

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.

◆ m_vtx_d0sig

std::vector< double >* EventReaderBaseAlg::m_vtx_d0sig = nullptr
protectedinherited

Definition at line 260 of file EventReaderBaseAlg.h.

◆ m_vtx_delta_z0_sin

std::vector< float >* EventReaderBaseAlg::m_vtx_delta_z0_sin = nullptr
protectedinherited

Definition at line 259 of file EventReaderBaseAlg.h.

◆ m_vtx_deltaZ0

std::vector< float >* EventReaderBaseAlg::m_vtx_deltaZ0 = nullptr
protectedinherited

Definition at line 258 of file EventReaderBaseAlg.h.

◆ m_vtx_x

std::vector< float >* EventReaderBaseAlg::m_vtx_x = nullptr
protectedinherited

Definition at line 255 of file EventReaderBaseAlg.h.

◆ m_vtx_y

std::vector< float >* EventReaderBaseAlg::m_vtx_y = nullptr
protectedinherited

Definition at line 256 of file EventReaderBaseAlg.h.

◆ m_vtx_z

std::vector< float >* EventReaderBaseAlg::m_vtx_z = nullptr
protectedinherited

Definition at line 257 of file EventReaderBaseAlg.h.

◆ m_z0Tag

Gaudi::Property<float> EventReaderBaseAlg::m_z0Tag {this, "z0Tag", 0.5, "z0 longitudinal impact parameter (mm)"}
protectedinherited

Definition at line 57 of file EventReaderBaseAlg.h.

57{this, "z0Tag", 0.5, "z0 longitudinal impact parameter (mm)"};// https://twiki.cern.ch/twiki/bin/viewauth/AtlasProtected/TrackingCPEOYE2015

◆ m_zee_deltaR

std::vector< double >* EventReaderBaseAlg::m_zee_deltaR = nullptr
protectedinherited

Definition at line 310 of file EventReaderBaseAlg.h.

◆ m_zee_E

std::vector< double >* EventReaderBaseAlg::m_zee_E = nullptr
protectedinherited

Definition at line 304 of file EventReaderBaseAlg.h.

◆ m_zee_M

std::vector< double >* EventReaderBaseAlg::m_zee_M = nullptr
protectedinherited

Definition at line 303 of file EventReaderBaseAlg.h.

◆ m_zee_pt

std::vector< double >* EventReaderBaseAlg::m_zee_pt = nullptr
protectedinherited

Definition at line 305 of file EventReaderBaseAlg.h.

◆ m_zee_px

std::vector< double >* EventReaderBaseAlg::m_zee_px = nullptr
protectedinherited

Definition at line 306 of file EventReaderBaseAlg.h.

◆ m_zee_py

std::vector< double >* EventReaderBaseAlg::m_zee_py = nullptr
protectedinherited

Definition at line 307 of file EventReaderBaseAlg.h.

◆ m_zee_pz

std::vector< double >* EventReaderBaseAlg::m_zee_pz = nullptr
protectedinherited

Definition at line 308 of file EventReaderBaseAlg.h.

◆ m_zee_T

std::vector< double >* EventReaderBaseAlg::m_zee_T = nullptr
protectedinherited

Definition at line 309 of file EventReaderBaseAlg.h.


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