ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
DerivationFramework
DerivationFrameworkEGamma
DerivationFrameworkEGamma
EGTransverseMassTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// EGTransverseMassTool.h
7
// author: giovanni.marchiori@cern.ch
9
10
#ifndef DERIVATIONFRAMEWORK_EGTRANSVERSEMASSTOOL_H
11
#define DERIVATIONFRAMEWORK_EGTRANSVERSEMASSTOOL_H
12
13
#include "
AthenaBaseComps/AthAlgTool.h
"
14
#include "
DerivationFrameworkInterfaces/IAugmentationTool.h
"
15
//
16
#include "
ExpressionEvaluation/ExpressionParserUser.h
"
17
#include "GaudiKernel/EventContext.h"
18
#include "
StoreGate/ReadHandleKey.h
"
19
#include "
xAODBase/IParticleContainer.h
"
20
#include "
xAODMissingET/MissingETContainer.h
"
21
//
22
#include <string>
23
#include <vector>
24
25
namespace
DerivationFramework
{
26
27
class
EGTransverseMassTool
:
public
extends<ExpressionParserUser<AthAlgTool>, IAugmentationTool>
28
{
29
public
:
30
using
base_class::base_class;
31
32
virtual
StatusCode
initialize
()
override
final
;
33
virtual
StatusCode
addBranches
(
const
EventContext& ctx)
const
override
final
;
34
35
private
:
36
StatusCode
getTransverseMasses
(
const
EventContext& ctx, std::vector<float>&)
37
const
;
38
39
Gaudi::Property<std::string>
m_expression1
{
this
,
"ObjectRequirements"
,
"true"
};
40
Gaudi::Property<float>
m_METmin
{
this
,
"METmin"
, -999.f};
41
Gaudi::Property<float>
m_mass1Hypothesis
{
this
,
"ObjectMassHypothesis"
, 0.f};
42
43
SG::WriteHandleKey<std::vector<float>
>
m_sgName
{
this
,
44
"StoreGateEntryName"
,
45
""
,
46
"SG key of output object"
};
47
48
SG::ReadHandleKey<xAOD::IParticleContainer>
m_container1Name
{
49
this
,
50
"ObjectContainerName"
,
51
""
,
52
"SG key of first container"
53
};
54
SG::ReadHandleKey<xAOD::MissingETContainer>
m_container2Name
{
55
this
,
56
"METContainerName"
,
57
"MET_LocHadTopo"
,
58
"SG key of second container"
59
};
60
61
SG::ReadHandleKey<std::vector<float>
>
m_pt1BranchName
{
62
this
,
63
"ObjectPtBranchName"
,
64
""
,
65
"Pt1 if different than default"
66
};
67
68
SG::ReadHandleKey<std::vector<float>
>
m_phi1BranchName
{
69
this
,
70
"ObjectPhiBranchName"
,
71
""
,
72
"Phi1 if different than default"
73
};
74
75
SG::ReadHandleKey<std::vector<float>
>
m_pt2BranchName
{
76
this
,
77
"METPtBranchName"
,
78
""
,
79
"Pt2 if different than default"
80
};
81
82
SG::ReadHandleKey<std::vector<float>
>
m_phi2BranchName
{
83
this
,
84
"METPhiBranchName"
,
85
""
,
86
"Phi2 if different than default"
87
};
88
};
89
}
90
91
#endif
// DERIVATIONFRAMEWORK_EGTRANSVERSEMASSTOOL_H
AthAlgTool.h
MissingETContainer.h
ExpressionParserUser.h
IAugmentationTool.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
DerivationFramework::EGTransverseMassTool
Definition
EGTransverseMassTool.h:28
DerivationFramework::EGTransverseMassTool::m_mass1Hypothesis
Gaudi::Property< float > m_mass1Hypothesis
Definition
EGTransverseMassTool.h:41
DerivationFramework::EGTransverseMassTool::m_phi1BranchName
SG::ReadHandleKey< std::vector< float > > m_phi1BranchName
Definition
EGTransverseMassTool.h:68
DerivationFramework::EGTransverseMassTool::m_phi2BranchName
SG::ReadHandleKey< std::vector< float > > m_phi2BranchName
Definition
EGTransverseMassTool.h:82
DerivationFramework::EGTransverseMassTool::addBranches
virtual StatusCode addBranches(const EventContext &ctx) const override final
Definition
EGTransverseMassTool.cxx:70
DerivationFramework::EGTransverseMassTool::m_pt1BranchName
SG::ReadHandleKey< std::vector< float > > m_pt1BranchName
Definition
EGTransverseMassTool.h:61
DerivationFramework::EGTransverseMassTool::m_pt2BranchName
SG::ReadHandleKey< std::vector< float > > m_pt2BranchName
Definition
EGTransverseMassTool.h:75
DerivationFramework::EGTransverseMassTool::m_METmin
Gaudi::Property< float > m_METmin
Definition
EGTransverseMassTool.h:40
DerivationFramework::EGTransverseMassTool::m_container1Name
SG::ReadHandleKey< xAOD::IParticleContainer > m_container1Name
Definition
EGTransverseMassTool.h:48
DerivationFramework::EGTransverseMassTool::m_expression1
Gaudi::Property< std::string > m_expression1
Definition
EGTransverseMassTool.h:39
DerivationFramework::EGTransverseMassTool::m_sgName
SG::WriteHandleKey< std::vector< float > > m_sgName
Definition
EGTransverseMassTool.h:43
DerivationFramework::EGTransverseMassTool::getTransverseMasses
StatusCode getTransverseMasses(const EventContext &ctx, std::vector< float > &) const
Definition
EGTransverseMassTool.cxx:85
DerivationFramework::EGTransverseMassTool::m_container2Name
SG::ReadHandleKey< xAOD::MissingETContainer > m_container2Name
Definition
EGTransverseMassTool.h:54
DerivationFramework::EGTransverseMassTool::initialize
virtual StatusCode initialize() override final
Definition
EGTransverseMassTool.cxx:36
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition
StoreGate/StoreGate/WriteHandleKey.h:40
DerivationFramework
THE reconstruction tool.
Definition
CascadeTools.h:16
IParticleContainer.h
Generated on
for ATLAS Offline Software by
1.17.0