 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef MSVTXVALIDATIONALG_H
6 #define MSVTXVALIDATIONALG_H
12 #include <TLorentzVector.h>
20 #include "GaudiKernel/ToolHandle.h"
21 #include "GaudiKernel/ITHistSvc.h"
22 #include "GaudiKernel/SystemOfUnits.h"
61 PublicToolHandle<Trig::TrigDecisionTool>
m_trigDec{
this,
"TrigDecisionTool",
"Trig::TrigDecisionTool/TrigDecisionTool"};
62 PublicToolHandle<Trig::R3MatchingTool>
m_matchingTool{
this,
"R3MatchingTool",
"Trig::R3MatchingTool",
"R3MatchingTool"};
68 Gaudi::Property<std::string>
m_MuonSegKey{
this,
"MuonSegmentsKey",
"MuonSegments"};
70 Gaudi::Property<bool>
m_readJets{
this,
"readJets",
false,
"add jet information to the tree"};
71 Gaudi::Property<bool>
m_computeJetVtx{
this,
"computeJetVtx",
false,
"compute the displaced vertex for a jet"};
72 Gaudi::Property<bool>
m_readMET{
this,
"readMET",
false,
"add met information to the tree"};
73 Gaudi::Property<bool>
m_computeIso{
this,
"computeIso",
false,
"add vertex isolation variables to the tree"};
76 Gaudi::Property<int>
m_pdgId_portal{
this,
"pdgId_portal", 25,
"Truth portal PDGId"};
77 Gaudi::Property<int>
m_pdgId_llp{
this,
"pdgId_llp", 35,
"Truth LLP PDGId"};
78 Gaudi::Property<bool>
m_llp_genStableChildren{
this,
"llp_genStableChildren",
false,
"Restricts the TruthParticle-LLP linking to generator stable children rather than all stable children"};
82 Gaudi::Property<float>
m_softTrackIso_R{
this,
"softTrackIso_R", 0.2,
"cone radius around vertex to sum up track pT"};
84 Gaudi::Property<float>
m_jetIso_LogRatio{
this,
"jetIso_LogRatio", 0.5,
"max log ECal/HCal ratio for jet to be considered for isolation"};
87 Gaudi::Property<std::string>
m_triggerString{
this,
"TriggerString",
"HLT_j400.*"};
88 Gaudi::Property<float>
m_jetTriggerMatchingDR{
this,
"jetTriggerMatching", 0.1,
"max dR distance for jet trigger matching"};
174 std::shared_ptr<MuonPRDTest::SegmentVariables>
m_muonSeg{
nullptr};
210 #endif // MSVTXVALIDATIONALG_H
Property holding a SG store/key/clid from which a ReadHandle is made.
MuonVal::VectorBranch< int > & m_jetVtx_NChildren
MuonVal::ThreeVectorBranch m_llpVtx_pos
MuonVal::VectorBranch< int > & m_msVtx_nTGC
std::unique_ptr< std::vector< int > > m_truthParticle_llpVtx_link_tmp
MuonVal::VectorBranch< float > & m_trklet_q
Gaudi::Property< float > m_softTrackIso_R
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
MuonVal::VectorBranch< float > & m_jetVtx_jet_dEta
MuonVal::VectorBranch< float > & m_msVtx_chi2
MuonVal::MuonTesterTree m_tree
std::shared_ptr< MuonPRDTest::SegmentVariables > m_muonSeg
ParticleBranchPtr_t m_portal
StatusCode fillTruth(const EventContext &ctx)
TH1F * m_h_subleadLLPctau
MuonVal::ScalarBranch< int > & m_portal_N
virtual StatusCode finalize() override final
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_TrackParticleKey
MuonVal::VectorBranch< int > & m_msVtx_nTGC_M
MuonVal::VectorBranch< int > & m_msVtx_Ntrklet
MuonVal::ScalarBranch< float > & m_met_y
MuonVal::VectorBranch< int > & m_msVtx_nRPC_M
MuonVal::ScalarBranch< float > & m_met_phi
MuonVal::VectorBranch< int > & m_msVtx_nRPC_E
MuonVal::VectorBranch< float > & m_llpVtx_Lxy
std::shared_ptr< MuonVal::IParticleFourMomBranch > ParticleBranchPtr_t
StatusCode fillMSVtx(const EventContext &ctx)
SG::ReadHandleKey< xAOD::JetContainer > m_JetKey
MuonVal::ScalarBranch< int > & m_llpVtx_N
ParticleBranchPtr_t m_truthParticle
MuonVal::VectorBranch< int > & m_msVtx_nMDT_M
SG::ReadHandleKey< xAOD::VertexContainer > m_MSVtxKey
MuonVal::VectorBranch< int > & m_msVtx_nTGC_inwards
Gaudi::Property< float > m_trackIso_pT
ParticleBranchPtr_t m_jet
MuonVal::VectorBranch< int > & m_msVtx_nTGC_E
MuonVal::VectorBranch< float > & m_jetVtx_jet_dPhi
StatusCode fillJet(const EventContext &ctx)
Gaudi::Property< bool > m_computeIso
MuonVal::ScalarBranch< float > & m_met_x
MuonVal::VectorBranch< float > & m_trklet_z0
MuonVal::VectorBranch< float > & m_msVtx_isoJets_mindR
MuonVal::ScalarBranch< float > & m_met
Gaudi::Property< bool > m_readMET
MuonVal::VectorBranch< int > & m_msVtx_nRPC_I
MuonVal::VectorBranch< int > & m_jetVtx_chainDepth
MuonVal::VectorBranch< int > & m_llp_Nchildren
MuonVal::VectorBranch< int > & m_truthParticle_llpVtx_link
MuonVal::VectorBranch< int > & m_msVtx_nDoF
MuonVal::VectorBranch< int > & m_msVtx_nRPC
MuonVal::VectorBranch< int > & m_jet_triggers
MuonVal::ThreeVectorBranch m_trklet_pos
MuonVal::VectorBranch< int > & m_msVtx_nMDT_inwards
MuonVal::VectorBranch< float > & m_trklet_theta
StatusCode fillMSVtxIso(const EventContext &ctx)
Gaudi::Property< int > m_pdgId_portal
ParticleBranchPtr_t m_llp
Gaudi::Property< float > m_jetIso_pT
MuonVal::ScalarBranch< int > & m_msVtx_N
Gaudi::Property< bool > m_llp_genStableChildren
MuonVal::VectorBranch< float > & m_msVtx_isoTracks_pTsum
virtual StatusCode execute() override final
Gaudi::Property< bool > m_computeJetVtx
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual StatusCode initialize() override final
MuonVal::VectorBranch< int > & m_msVtx_nMDT_O
MuonVal::VectorBranch< int > & m_msVtx_nTGC_I
MuonVal::ScalarBranch< float > & m_sumEt
StatusCode fillMuonSegments(const EventContext &ctx)
std::unique_ptr< std::vector< int > > m_truthParticle_jetVtx_link_tmp
MuonVal::VectorBranch< int > & m_msVtx_nMDT
PublicToolHandle< Trig::R3MatchingTool > m_matchingTool
MuonVal::ScalarBranch< int > & m_llp_N
MuonVal::VectorBranch< float > & m_trklet_d0
VectorBranch< T > & newVector(const std::string &name)
Creates new branches and returns their reference.
MuonVal::ScalarBranch< int > & m_jet_N
MuonVal::ThreeVectorBranch m_jetVtx_pos
MuonVal::VectorBranch< float > & m_msVtx_isoTracks_mindR
MuonVal::VectorBranch< int > & m_msVtx_nMDT_E
Gaudi::Property< float > m_jetIso_LogRatio
MuonVal::VectorBranch< float > & m_trklet_phi
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_TruthParticleKey
ScalarBranch< T > & newScalar(const std::string &name)
MuonVal::VectorBranch< int > & m_trklet_vtxLink
MuonVal::VectorBranch< int > & m_msVtx_nRPC_O
MuonVal::VectorBranch< float > & m_llpVtx_ctau
Gaudi::Property< int > m_pdgId_llp
MuonVal::VectorBranch< int > & m_msVtx_nMDT_I
SG::ReadHandleKey< xAOD::EventInfo > m_evtKey
StatusCode fillJetVtx(const EventContext &ctx, const xAOD::Jet *jet)
MuonVal::ThreeVectorBranch m_msVtx_pos
SG::ReadHandleKey< xAOD::MissingETContainer > m_MetKey
PublicToolHandle< Trig::TrigDecisionTool > m_trigDec
Tool handle for the trigger decision and matching tools.
MuonVal::VectorBranch< float > & m_trklet_eta
Class describing a Vertex.
MuonVal::VectorBranch< int > & m_truthParticle_jetVtx_link
Gaudi::Property< std::string > m_triggerString
MuonVal::VectorBranch< float > & m_trklet_qOverP
MuonVal::VectorBranch< int > & m_msVtx_nTGC_O
MuonVal::VectorBranch< int > & m_jet_jetVtx_link
void fillHits(const xAOD::Vertex *vtx, const std::string &decorator_str, MuonVal::VectorBranch< int > &branch)
MuonVal::ScalarBranch< int > & m_trklet_N
MuonVal::ThreeVectorBranch m_trklet_mom
MuonVal::VectorBranch< int > & m_msVtx_nRPC_inwards
def TH1F(name, title, nxbins, bins_par2, bins_par3=None, path='', **kwargs)
Gaudi::Property< float > m_jetTriggerMatchingDR
Handle class for reading from StoreGate.
Gaudi::Property< std::string > m_MuonSegKey
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_TrackletKey
StatusCode fillTracklets(const EventContext &ctx)
Gaudi::Property< bool > m_readJets
StatusCode fillMet(const EventContext &ctx)