ATLAS Offline Software
TruthParticleFilterBaseTool.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // TruthParticleFilterBaseTool.h
8 // Header file for class TruthParticleFilterBaseTool
9 // Author: S.Binet<binet@cern.ch>
11 #ifndef MCPARTICLETOOLS_TRUTHPARTICLEFILTERBASETOOL_H
12 #define MCPARTICLETOOLS_TRUTHPARTICLEFILTERBASETOOL_H 1
13 
14 // STL includes
15 #include <string>
16 
18 
19 // FrameWork includes
20 #include "GaudiKernel/ToolHandle.h"
21 #include "GaudiKernel/ServiceHandle.h"
23 
24 // McParticleKernel includes
26 
27 // Forward declaration
28 class IMcVtxFilterTool;
30 
32  public AthAlgTool
33 {
34 
36  // Public methods:
38  public:
39 
40  // Copy constructor:
41 
43  TruthParticleFilterBaseTool( const std::string& type,
44  const std::string& name,
45  const IInterface* parent );
46 
49 
50  // Athena algorithm's Hooks
54 
55 
57  // Protected methods:
59  protected:
60 
64 
65  // to be implemented (if needed) by derived classes
66  virtual StatusCode initializeTool();
67  virtual StatusCode finalizeTool();
68 
70  // Protected data:
72  protected:
73 
74  typedef ToolHandle<IMcVtxFilterTool> McVtxFilterTool_t;
79 
80  typedef ToolHandle<ITruthIsolationTool> IsolTool_t;
86 
87  // switches
88 
94  BooleanProperty m_doEtIsolation;
95 
96  // Containers
97 
100  SG::ReadHandleKey<McEventCollection> m_mcEventsReadHandleKey{this,"McEvents","TruthEvent","ReadHandleKey for input McEventCollection one wants to filter"};
101 
104  SG::WriteHandleKey<McEventCollection> m_mcEventsOutputWriteHandleKey{this,"McEventsOutput","GEN_AOD","WriteHandleKey for the output McEventCollection which has been filtered"};
105 
106 };
107 
110 
114 
115 inline
118 {
119  return StatusCode::SUCCESS;
120 }
121 
122 inline
125 {
126  return StatusCode::SUCCESS;
127 }
128 
129 #endif //> MCPARTICLETOOLS_TRUTHPARTICLEFILTERBASETOOL_H
TruthParticleFilterBaseTool::m_doEtIsolation
BooleanProperty m_doEtIsolation
Switch to compute or not the Et-isolations for TruthParticle (and their underlying HepMC::GenParticle...
Definition: TruthParticleFilterBaseTool.h:94
TruthParticleFilterBaseTool::finalizeTool
virtual StatusCode finalizeTool()
Definition: TruthParticleFilterBaseTool.h:124
SG::ReadHandleKey< McEventCollection >
TruthParticleFilterBaseTool::initializeTool
virtual StatusCode initializeTool()
I/O operators.
Definition: TruthParticleFilterBaseTool.h:117
TruthParticleFilterBaseTool::execute
StatusCode execute()
Definition: TruthParticleFilterBaseTool.cxx:120
ITruthParticleFilterTool
Definition: ITruthParticleFilterTool.h:26
ITruthIsolationTool
Definition: ITruthIsolationTool.h:33
SG::WriteHandleKey< McEventCollection >
McEventCollection.h
IMcVtxFilterTool
Definition: IMcVtxFilterTool.h:27
TruthParticleFilterBaseTool::m_mcEventsReadHandleKey
SG::ReadHandleKey< McEventCollection > m_mcEventsReadHandleKey
ReadHandleKey for the input McEventCollection one wants to filter.
Definition: TruthParticleFilterBaseTool.h:100
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TruthParticleFilterBaseTool::m_mcVtxFilterTool
McVtxFilterTool_t m_mcVtxFilterTool
Pointer to the McVtxFilterTool to be able to select additional vertices on some decay pattern criteri...
Definition: TruthParticleFilterBaseTool.h:78
AthAlgTool.h
TruthParticleFilterBaseTool::m_isolationTool
IsolTool_t m_isolationTool
Pointer to the TruthIsolationTool to be able to compute transverse energy isolations for various isol...
Definition: TruthParticleFilterBaseTool.h:85
TruthParticleFilterBaseTool::finalize
StatusCode finalize()
Definition: TruthParticleFilterBaseTool.cxx:105
test_pyathena.parent
parent
Definition: test_pyathena.py:15
TruthParticleFilterBaseTool::IsolTool_t
ToolHandle< ITruthIsolationTool > IsolTool_t
Definition: TruthParticleFilterBaseTool.h:80
TruthParticleFilterBaseTool::McVtxFilterTool_t
ToolHandle< IMcVtxFilterTool > McVtxFilterTool_t
Definition: TruthParticleFilterBaseTool.h:74
TruthParticleFilterBaseTool
Definition: TruthParticleFilterBaseTool.h:33
TruthParticleFilterBaseTool::TruthParticleFilterBaseTool
TruthParticleFilterBaseTool()
Default constructor:
TruthParticleFilterBaseTool::~TruthParticleFilterBaseTool
virtual ~TruthParticleFilterBaseTool()
Destructor:
Definition: TruthParticleFilterBaseTool.cxx:58
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
TruthParticleFilterBaseTool::initialize
StatusCode initialize()
Athena Algorithm's Hooks.
Definition: TruthParticleFilterBaseTool.cxx:65
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
ITruthParticleFilterTool.h
AthAlgTool
Definition: AthAlgTool.h:26
TruthParticleFilterBaseTool::m_mcEventsOutputWriteHandleKey
SG::WriteHandleKey< McEventCollection > m_mcEventsOutputWriteHandleKey
Location of the output McEventCollection which has been filtered.
Definition: TruthParticleFilterBaseTool.h:104