ATLAS Offline Software
Loading...
Searching...
No Matches
METTruthTool.h
Go to the documentation of this file.
1
2
3/*
4 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
5*/
6
7// METTruthTool.h
8// Header file for class METTruthTool
9//
10// This is a scheduler for the MET Reconstruction, and sets up
11// the sequence in which the individual terms are constructed.
12//
13// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
14//
15// Author: P Loch, S Resconi, TJ Khoo, AS Mete
17#ifndef METRECONSTRUCTION_METTRUTHTOOL_H
18#define METRECONSTRUCTION_METTRUTHTOOL_H 1
19
20// STL includes
21#include <string>
22
23// METReconstruction includes
25
27
28// Truth EDM
30
31namespace met{
32
34 : public METBuilderTool
35 {
36 // This macro defines the constructor with the interface declaration
38
39
40
41 // Public methods:
43 public:
44
45 // Constructor with name (does this have to be a non-const
46 // std::string and not a const reference?)
47 METTruthTool(const std::string& name);
48 ~METTruthTool() = default;
49
50 // AsgTool Hooks
51 virtual StatusCode initialize() override;
52
53
55 // Private data:
57 protected:
58 virtual
59 StatusCode executeTool(xAOD::MissingET* metTerm, xAOD::MissingETComponentMap* metMap) const override;
60 // Accept functions
61 virtual
62 bool accept (const xAOD::IParticle* object) const override;
63 bool accept_nonint (const xAOD::TruthParticle* truth) const;
64 bool accept_int (const xAOD::TruthParticle* truth) const;
65 bool accept_intout (const xAOD::TruthParticle* truth) const;
66 bool accept_intmuons (const xAOD::TruthParticle* truth) const;
67 // Overlap resolver function
68 virtual
71 std::vector<const xAOD::IParticle*>&,
72 MissingETBase::Types::weight_t&) const override { return true;};
73
74 private:
75 // Default constructor:
77
78 Gaudi::Property<std::string> m_inputType{this, "InputComposition", "NonInt", "truth type"}; // NonInt, Int, IntMuons, IntOut
80
81 Gaudi::Property<double> m_det_maxEta{this, "MaxEtaDet", 5., "nominal max detector eta"};
82 Gaudi::Property<double> m_truthmu_minPt{this, "MinPtMu", 6e3, "nominal min muon pt"};
83 Gaudi::Property<double> m_truthmu_maxEta{this, "MaxEtaMu", 2.7, "nominal max MS eta"};
84 SG::ReadHandleKey<xAOD::TruthEventContainer> m_truthEventKey{this, "InputCollection", "TruthEvents", "truth events input collection"};
85
86 // TEMPORARILY recopy some helper from TruthHelper and GeneratorUtils packages
87 // *** via JetSimTools ***
88 // We'll have to use this package when they work properly with xAOD.
89 };
90
91}
92
93#endif //> !METRECONSTRUCTION_METTRUTHTOOL_H
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Property holding a SG store/key/clid from which a ReadHandle is made.
METBuilderTool(const std::string &name)
bool accept_intmuons(const xAOD::TruthParticle *truth) const
MissingETBase::Source::TruthType m_truth_type
virtual bool resolveOverlap(const xAOD::IParticle *, xAOD::MissingETComponentMap *, std::vector< const xAOD::IParticle * > &, MissingETBase::Types::weight_t &) const override
SG::ReadHandleKey< xAOD::TruthEventContainer > m_truthEventKey
Gaudi::Property< std::string > m_inputType
METTruthTool(const std::string &name)
virtual bool accept(const xAOD::IParticle *object) const override
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
~METTruthTool()=default
Gaudi::Property< double > m_truthmu_minPt
virtual StatusCode executeTool(xAOD::MissingET *metTerm, xAOD::MissingETComponentMap *metMap) const override
bool accept_int(const xAOD::TruthParticle *truth) const
bool accept_nonint(const xAOD::TruthParticle *truth) const
bool accept_intout(const xAOD::TruthParticle *truth) const
Gaudi::Property< double > m_truthmu_maxEta
Gaudi::Property< double > m_det_maxEta
Class providing the definition of the 4-vector interface.
xAOD::MissingETComponent_v1::Weight weight_t
Type for kinematic weight.
MissingETComponentMap_v1 MissingETComponentMap
Version control by type definition.
MissingET_v1 MissingET
Version control by type defintion.
TruthParticle_v1 TruthParticle
Typedef to implementation.
TruthType
Truth type indicators.