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 () override
virtual StatusCode finalize () override
virtual StatusCode sysInitialize () override
 Override sysInitialize.
virtual const DataObjIDColl & extraOutputDeps () const override
 Return the list of extra output dependencies.
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

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)
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< 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< 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< 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< 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 546 of file EventReaderAlg.cxx.

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

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

◆ dumpEventInfo()

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

Definition at line 391 of file EventReaderAlg.cxx.

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

◆ dumpLumiblockInfo()

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

Definition at line 379 of file EventReaderAlg.cxx.

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

◆ dumpOfflineSS()

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

Definition at line 289 of file EventReaderAlg.cxx.

289 {
290 m_el_f1->push_back(electron->showerShapeValue(xAOD::EgammaParameters::f1));
291 m_el_f3->push_back(electron->showerShapeValue(xAOD::EgammaParameters::f3));
292 m_el_eratio->push_back(electron->showerShapeValue(xAOD::EgammaParameters::Eratio));
293 m_el_weta1->push_back(electron->showerShapeValue(xAOD::EgammaParameters::weta1));
294 m_el_weta2->push_back(electron->showerShapeValue(xAOD::EgammaParameters::weta2));
295 m_el_fracs1->push_back(electron->showerShapeValue(xAOD::EgammaParameters::fracs1));
296 m_el_wtots1->push_back(electron->showerShapeValue(xAOD::EgammaParameters::wtots1));
297 m_el_e277->push_back(electron->showerShapeValue(xAOD::EgammaParameters::e277));
298 m_el_reta->push_back(electron->showerShapeValue(xAOD::EgammaParameters::Reta));
299 m_el_rphi->push_back(electron->showerShapeValue(xAOD::EgammaParameters::Rphi));
300 m_el_deltae->push_back(electron->showerShapeValue(xAOD::EgammaParameters::DeltaE));
301 m_el_rhad->push_back(electron->showerShapeValue(xAOD::EgammaParameters::Rhad));
302 m_el_rhad1->push_back(electron->showerShapeValue(xAOD::EgammaParameters::Rhad1));
303
304 return StatusCode::SUCCESS;
305}
@ 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 321 of file EventReaderAlg.cxx.

321 {
322
323 const xAOD::TrackParticle *trackElectron = el->trackParticle();
324
325 // check for primary vertex in the event
326 // *************** Primary vertex check ***************
327 //loop over vertices and look for good primary vertex
328 float bestDeltaZ0Sin = 9999.0, bestZfromVertex = 9999.0, bestXFromVertex = 9999.0, bestYFromVertex = 9999.0, bestDeltaZ0 = 9999.0;
329 double bestD0Sig = 9999.0;
330 int vtxCounter = 0;//, bestVtxCounter = 0;
331 bool isAnyClosestVtx = false;
332 for (const xAOD::Vertex *vxIter : *primVertexCnt) {
333
334 // Select good primary vertex
335 float zFromVertex = vxIter->z();
336 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).
337 float delta_z0_sin = delta_z0 * sin(trackElectron->theta()); //where sin(trk.theta()) parameterises the uncertainty of the z0 measurement.
338 double d0sig = xAOD::TrackingHelpers::d0significance( trackElectron, evtInfo->beamPosSigmaX(), evtInfo->beamPosSigmaY(), evtInfo->beamPosSigmaXY() );
339
340
341 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?
342 isAnyClosestVtx = true;
343
344 ATH_MSG_DEBUG ("(dumpPrimVertexAssocToElectron) Vertex "<< vtxCounter << ": This is a primary vertex. |delta_z0_sin| < 0.5 mm ("<< delta_z0_sin << "). |d0sig| < 5 (" << d0sig << ")");
345 if ( (fabs(delta_z0_sin) < fabs(bestDeltaZ0Sin) ) && (fabs(d0sig) < fabs(bestD0Sig)) ) // is this vertex the closest one to that electron track?
346 {
347 // assign all variables to dump:
348 ATH_MSG_DEBUG ("(dumpPrimVertexAssocToElectron) New best associated Vertex. Vertex "<< vtxCounter << ": |delta_z0_sin| < 0.5 mm ("<< delta_z0_sin << "). |d0sig| < 5 (" << d0sig << ")");
349
350 bestDeltaZ0Sin = delta_z0_sin;
351 bestD0Sig = d0sig;
352
353 bestXFromVertex = vxIter->x();
354 bestYFromVertex = vxIter->y();
355 bestZfromVertex = zFromVertex;
356 bestDeltaZ0 = delta_z0;
357 }
358 }
359 vtxCounter++;
360 }
361 // --------- Dump here: ---------
362 if (isAnyClosestVtx){
363 m_vtx_x->push_back(bestXFromVertex);
364 m_vtx_y->push_back(bestYFromVertex);
365 m_vtx_z->push_back(bestZfromVertex);
366 m_vtx_deltaZ0->push_back(bestDeltaZ0);
367 m_vtx_delta_z0_sin->push_back(bestDeltaZ0Sin);
368 m_vtx_d0sig->push_back(bestD0Sig);
369 }
370 else{
371 ATH_MSG_ERROR("A pre-selected electron track has no closest vertex to dump! (weird?)");
372 }
373 // -------------------------------
374
375
376 return StatusCode::SUCCESS;
377}
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 500 of file EventReaderAlg.cxx.

500 {
501 ATH_MSG_INFO("Dumping Truth Particle...");
502
503 auto elecCandidates = std::make_unique<ConstDataVector<xAOD::TruthParticleContainer>> (SG::VIEW_ELEMENTS);
504
505 if (truthParticleCnt->size() == 0) ATH_MSG_INFO("truthParticleCnt is empty!");
506 else{
507 for (const xAOD::Electron *recElectron : *electronSelectionCnt){
508
510 elecCandidates->push_back( truth );
511
512 ATH_MSG_INFO("(TruthParticle) Reco pt="<< recElectron->pt()<<" , Truth pt= "<< truth->pt());
513 }
514 }
515
516 if (elecCandidates->size() > 0) ATH_MSG_INFO("(TruthParticle) Size of elecCandidates is "<< elecCandidates->size()<<" !");
517
518 for (const xAOD::TruthParticle *elecSelected : *elecCandidates){
519 const xAOD::TruthVertex* vertex = elecSelected->prodVtx();
520
521 TLorentzVector elecCandidateLorentz;
522 elecCandidateLorentz.SetPtEtaPhiE(elecSelected->pt(),elecSelected->eta(),elecSelected->phi(),elecSelected->e());
523
524 m_mc_vert_x->push_back(vertex->x()); // vertex displacement
525 m_mc_vert_y->push_back(vertex->y()); // vertex displacement
526 m_mc_vert_z->push_back(vertex->z()); // vertex displacement in beam direction
527 m_mc_vert_time->push_back(vertex->t()); // vertex time
528 m_mc_vert_perp->push_back(vertex->perp()); // Vertex transverse distance from the beam line
529 m_mc_vert_eta->push_back(vertex->eta()); // Vertex pseudorapidity
530 m_mc_vert_phi->push_back(vertex->phi()); // Vertex azimuthal angle
531 m_mc_vert_uniqueID->push_back(HepMC::uniqueID(vertex));
532 m_mc_vert_status->push_back(HepMC::status(vertex));
533
534 m_mc_part_energy->push_back(elecSelected->e());
535 m_mc_part_pt->push_back(elecSelected->pt());
536 m_mc_part_pdgId->push_back(elecSelected->pdgId());
537 m_mc_part_m->push_back(elecSelected->m());
538 m_mc_part_phi->push_back(elecSelected->phi());
539 m_mc_part_eta->push_back(elecSelected->eta());
540 }
541 ATH_CHECK (evtStore()->record( elecCandidates.release(), "MyMatchedTruthElectrons"));
542 return StatusCode::SUCCESS;
543
544}
#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 404 of file EventReaderAlg.cxx.

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

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

246 {
247
248 ATH_MSG_INFO(eSelectionText << elContainer->size() );
249
250 int electronIndex = 0;
251 for (const xAOD::Electron *elec : *elContainer){
252
253 const auto& clusLinks = elec->caloClusterLinks(); // get the cluster links for the electron
254
255 // loop over clusters and dump cells
256 for (const auto& clusLink : clusLinks){
257
258 // get associated topoclusters from superclusters
260 auto assocCls = xAOD::EgammaHelpers::getAssociatedTopoClusters( (*clusLink) );
261
262 for ( auto assocCl : assocCls){
263 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) );
264 if (! dumpClusterCells(assocCl, m_c_clusterIndexCounter, ctx ) ) ATH_MSG_WARNING ("CaloCluster Cells cannot be dumped for Zee.");
265
267 }
268 }
269 else{ // dump only the superclusters
270 if (! dumpClusterCells((*clusLink), m_c_clusterIndexCounter, ctx ) ) ATH_MSG_WARNING ("CaloCluster Cells cannot be dumped for Zee.");
272 }
273 m_c_electronIndex_clusterLvl->push_back(electronIndex); // electron indexes for each cluster
274 } //end-for loop in clusLinks
275
276 // dump tag and probe electrons
277 if (!dumpElectrons(elec)) ATH_MSG_WARNING ("Cannot dump ordinary electrons...");
278 if (!dumpOfflineSS(elec)) ATH_MSG_WARNING ("Cannot dump offline shower shapes for electrons...");
279 if (!dumpPrimVertexAssocToElectron(elec, primVertexCnt, ei)) ATH_MSG_WARNING ("Cannot dump primary vertexes info associated to electrons...");
280 m_el_index->push_back(electronIndex);
281
282 electronIndex++;
283
284 } // end-for loop in m_electronsSelectedByTrack electrons
285
286 return StatusCode::SUCCESS;
287}
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.

◆ finalize()

StatusCode EventReaderAlg::finalize ( )
overridevirtual

Reimplemented from EventReaderBaseAlg.

Definition at line 990 of file EventReaderAlg.cxx.

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

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

◆ 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.
retrieve(aClass, aKey=None)
Definition PyKernel.py:110

◆ inputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< 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

◆ 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< Algorithm >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

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

◆ msgLvl()

bool AthCommonMsg< 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< 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< 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< Algorithm > >::renounceArray ( SG::VarHandleKeyArray & handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364 {
366 }

◆ 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< 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< 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< 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 }
std::vector< SG::VarHandleKeyArray * > m_vhka

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< 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< 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 79 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< Algorithm > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< 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: