ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
HeavyIonRec
HIJetRec
src
HIClusterSubtraction.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
// HIClusterSubtraction.h
6
7
#ifndef __HIJETREC_HICLUSTERSUBTRACTION_H__
8
#define __HIJETREC_HICLUSTERSUBTRACTION_H__
9
22
23
#include "
AsgTools/AsgTool.h
"
24
#include "
JetInterface/IJetExecuteTool.h
"
25
#include <
xAODCaloEvent/CaloClusterContainer.h
>
26
#include "
AsgTools/ToolHandle.h
"
27
#include <
HIJetRec/IHISubtractorTool.h
>
28
#include <
HIJetRec/IHIUEModulatorTool.h
>
29
#include "
CaloUtils/CaloClusterCollectionProcessor.h
"
30
#include "
xAODTracking/VertexContainer.h
"
31
#include "
HIEventUtils/HIEventShapeMapTool.h
"
32
33
#include "
StoreGate/ReadHandleKey.h
"
34
#include "
StoreGate/WriteHandleKey.h
"
35
36
#include "
xAODHIEvent/HIEventShapeContainer.h
"
37
38
class
HIClusterSubtraction
:
virtual
public
asg::AsgTool
,
39
virtual
public
IJetExecuteTool
40
{
41
ASG_TOOL_CLASS
(
HIClusterSubtraction
,
IJetExecuteTool
)
42
public
:
43
HIClusterSubtraction
(
const
std::string& name);
44
virtual
StatusCode
initialize
();
45
virtual
~HIClusterSubtraction
() {};
46
47
virtual
int
execute
()
const
;
48
49
bool
doOriginCorrection
(
xAOD::CaloCluster
* cl,
const
xAOD::Vertex
* origin,
xAOD::IParticle::FourMom_t
& p4_cl )
const
;
50
51
52
private
:
54
SG::ReadHandleKey< xAOD::CaloClusterContainer >
m_inClusterKey
{
this
,
"ClusterKey"
,
"ClusterKey"
,
"Name of the input Cluster Container"
};
56
SG::WriteHandleKey< xAOD::CaloClusterContainer >
m_outClusterKey
{
this
,
"OutClusterKey"
,
"OutClusterKey"
,
"Name of the output Cluster Container (deep Copy)"
};
58
SG::ReadHandleKey< xAOD::HIEventShapeContainer >
m_eventShapeKey
{
this
,
"EventShapeKey"
,
"EventShapeKey"
,
"Name of HIEventShapeContainer defining background"
};
60
SG::ReadHandleKey< xAOD::VertexContainer >
m_vertexContainer
{
this
,
"VertexContainer"
,
"PrimaryVertices"
,
"Vertex container for primary vertices"
};
61
62
// Tool handles
63
ToolHandle<IHISubtractorTool>
m_subtractorTool
{
this
,
"Subtractor"
,
"HIJetSubtractorToolBase"
,
"Handle to IHISubtractorTool which does calculates subtracted kinematics"
};
64
ToolHandle<IHIUEModulatorTool>
m_modulatorTool
{
this
,
"Modulator"
,
"HIUEModulatorTool"
,
"Handle to IHIModulatorTool"
};
65
ToolHandle<IHIEventShapeMapTool>
m_eventShapeMapTool
{
this
,
"EventShapeMapTool"
,
"HIEventShapeMapTool"
,
"Handle to Event Shape Map Tool"
};
66
ToolHandleArray<CaloClusterCollectionProcessor>
m_clusterCorrectionTools
{
this
,
"ClusterCorrectionTools"
, {},
""
};
67
68
// Booleans
69
Gaudi::Property< bool >
m_setMoments
{
this
,
"SetMoments"
,
true
,
"Set Moments boolean switch"
};
70
Gaudi::Property< bool >
m_updateMode
{
this
,
"UpdateOnly"
,
false
,
"Update Mode boolean switch"
};
71
//Moving the origin correction directly here
72
Gaudi::Property< bool >
m_originCorrection
{
this
,
"ApplyOriginCorrection"
,
false
,
"Apply Origin Correction boolean switch"
};
73
74
};
75
#endif
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition
AsgToolMacros.h:68
AsgTool.h
CaloClusterCollectionProcessor.h
Base class for cluster processing tools called from CaloClusterMaker.
CaloClusterContainer.h
HIEventShapeContainer.h
HIEventShapeMapTool.h
IHISubtractorTool.h
IHIUEModulatorTool.h
IJetExecuteTool.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
ToolHandle.h
VertexContainer.h
HIClusterSubtraction::m_setMoments
Gaudi::Property< bool > m_setMoments
Definition
HIClusterSubtraction.h:69
HIClusterSubtraction::initialize
virtual StatusCode initialize()
Dummy implementation of the initialisation function.
Definition
HIClusterSubtraction.cxx:28
HIClusterSubtraction::m_modulatorTool
ToolHandle< IHIUEModulatorTool > m_modulatorTool
Definition
HIClusterSubtraction.h:64
HIClusterSubtraction::m_subtractorTool
ToolHandle< IHISubtractorTool > m_subtractorTool
Definition
HIClusterSubtraction.h:63
HIClusterSubtraction::HIClusterSubtraction
HIClusterSubtraction(const std::string &name)
Definition
HIClusterSubtraction.cxx:22
HIClusterSubtraction::m_outClusterKey
SG::WriteHandleKey< xAOD::CaloClusterContainer > m_outClusterKey
|brief New writeHandleKey to store the shallow copy used for new CaloClusterTreatment
Definition
HIClusterSubtraction.h:56
HIClusterSubtraction::execute
virtual int execute() const
Method to be called for each event.
Definition
HIClusterSubtraction.cxx:83
HIClusterSubtraction::doOriginCorrection
bool doOriginCorrection(xAOD::CaloCluster *cl, const xAOD::Vertex *origin, xAOD::IParticle::FourMom_t &p4_cl) const
Definition
HIClusterSubtraction.cxx:46
HIClusterSubtraction::m_clusterCorrectionTools
ToolHandleArray< CaloClusterCollectionProcessor > m_clusterCorrectionTools
Definition
HIClusterSubtraction.h:66
HIClusterSubtraction::m_inClusterKey
SG::ReadHandleKey< xAOD::CaloClusterContainer > m_inClusterKey
Name of input cluster container.
Definition
HIClusterSubtraction.h:54
HIClusterSubtraction::~HIClusterSubtraction
virtual ~HIClusterSubtraction()
Definition
HIClusterSubtraction.h:45
HIClusterSubtraction::m_eventShapeKey
SG::ReadHandleKey< xAOD::HIEventShapeContainer > m_eventShapeKey
Name of HIEventShapeContainer defining background.
Definition
HIClusterSubtraction.h:58
HIClusterSubtraction::m_originCorrection
Gaudi::Property< bool > m_originCorrection
Definition
HIClusterSubtraction.h:72
HIClusterSubtraction::m_eventShapeMapTool
ToolHandle< IHIEventShapeMapTool > m_eventShapeMapTool
Definition
HIClusterSubtraction.h:65
HIClusterSubtraction::m_updateMode
Gaudi::Property< bool > m_updateMode
Definition
HIClusterSubtraction.h:70
HIClusterSubtraction::m_vertexContainer
SG::ReadHandleKey< xAOD::VertexContainer > m_vertexContainer
|brief Name of Vertex Container for origin correction
Definition
HIClusterSubtraction.h:60
IJetExecuteTool
IJetExecuteTool is a dual-use tool interface for generic tools, i.e. those that behave like algorithm...
Definition
IJetExecuteTool.h:19
SG::ReadHandleKey< xAOD::CaloClusterContainer >
SG::WriteHandleKey< xAOD::CaloClusterContainer >
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition
AsgTool.h:47
xAOD::IParticle::FourMom_t
TLorentzVector FourMom_t
Definition of the 4-momentum type.
Definition
Event/xAOD/xAODBase/xAODBase/IParticle.h:69
xAOD::CaloCluster
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.
Definition
Event/xAOD/xAODCaloEvent/xAODCaloEvent/CaloCluster.h:19
xAOD::Vertex
Vertex_v1 Vertex
Define the latest version of the vertex class.
Definition
Event/xAOD/xAODTracking/xAODTracking/Vertex.h:16
Generated on
for ATLAS Offline Software by
1.17.0