ATLAS Offline Software
Loading...
Searching...
No Matches
ElectronSiHitDecAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
6// ElectronSiHitDecAlg
7// Author: RD Schaffer, R.D.Schaffer@cern.ch
8// Algorithm to decorate SiHit electrons with extra information
9// from tracks and clusters to avoid writing them out
11
12#ifndef ASG_ANALYSIS_ALGORITHMS__ELECTRON_SIHIT_DEC_ALGORITHM__H
13#define ASG_ANALYSIS_ALGORITHMS__ELECTRON_SIHIT_DEC_ALGORITHM__H
14
22
23
24namespace CP
25{
28 {
30 public:
31 ElectronSiHitDecAlg(const std::string &name,
32 ISvcLocator *pSvcLocator);
33
34 StatusCode initialize() override;
35 StatusCode execute() override;
36
37 private:
38
41
42 // EventInfo key
43 SysReadHandle<xAOD::EventInfo> m_eventInfoKey{this, "EventInfo", "EventInfo", "Input event information"};
44
45 // Primary vertex key
46 SysReadHandle<xAOD::VertexContainer> m_vertexKey{this, "VertexContainer", "PrimaryVertices", "Primary vertex container"};
47
48 // Electron container key
49 SysReadHandle<xAOD::ElectronContainer> m_electronContainerKey{this, "ElectronContainer", "AnalysisSiHitElectrons", "Sihit electrons to decorate"};
50
51 // Muon container key for event selection
52 SysReadHandle<xAOD::MuonContainer> m_analMuonContKey{this, "AnalMuonContKey", "AnalysisMuons", "Muons use for event selection to decorate SiHit electrons"};
53
54 // Electron container key for event selection
55 SysReadHandle<xAOD::ElectronContainer> m_analElectronContKey{this, "AnalElectronContKey", "AnalysisElectrons", "Electrons use for event selection to decorate SiHit electrons"};
56
57 // Apply event veto - require at least two muons or electrons to be present
58 Gaudi::Property<bool> m_requireTwoLeptons {this, "RequireTwoLeptons", true, "boolean to select events with at least a pair of electrons or muons which pass the basic cuts, i.e. are in their corresponding analysis containers"};
59
61 CP::SysWriteDecorHandle<float> m_z0stheta{this, "z0stheta", "z0stheta", "the decoration for z0 x sin(theta) of electron track"};
62 CP::SysWriteDecorHandle<float> m_d0Normalized{this, "d0Normalized", "d0Normalized", "the decoration for d0Normalized of the electron track"};
63 CP::SysWriteDecorHandle<int> m_nInnerExpPix{this, "nInnerExpPix", "nInnerExpPix", "the decoration for number of inner pixel hits of the electron track"};
64 CP::SysWriteDecorHandle<float> m_clEta{this, "clEta", "clEta", "the decoration for eta of the electron cluster"};
65 CP::SysWriteDecorHandle<float> m_clPhi{this, "clPhi", "clPhi", "the decoration for phi of the electron cluster"};
66
68 CP::SysWriteDecorHandle<char> m_evtOKDec{this, "selectionName", "", "the decoration for the combined WP and FSR selection"};
69
70 };
71}
72#endif
StatusCode initialize() override
SysReadHandle< xAOD::ElectronContainer > m_electronContainerKey
SysReadHandle< xAOD::VertexContainer > m_vertexKey
CP::SysWriteDecorHandle< float > m_clEta
CP::SysWriteDecorHandle< float > m_z0stheta
Decorators for the extra information from clusters and tracks for SiHit electrons.
CP::SysWriteDecorHandle< int > m_nInnerExpPix
CP::SysWriteDecorHandle< float > m_d0Normalized
SysReadHandle< xAOD::ElectronContainer > m_analElectronContKey
CP::SysWriteDecorHandle< char > m_evtOKDec
Decorator for SiHit electron for event requirement on a pair of leptons.
CP::SysWriteDecorHandle< float > m_clPhi
Gaudi::Property< bool > m_requireTwoLeptons
ElectronSiHitDecAlg(const std::string &name, ISvcLocator *pSvcLocator)
the standard constructor
SysReadHandle< xAOD::EventInfo > m_eventInfoKey
SysReadHandle< xAOD::MuonContainer > m_analMuonContKey
StatusCode execute() override
SysListHandle m_systematicsList
the systematics list we run
a class managing the property to configure the list of systematics to process
a data handle for reading systematics varied input data
a data handle for reading systematics varied input data
the (new) base class for EventLoop algorithms
Select isolated Photons, Electrons and Muons.