ATLAS Offline Software
EventDensityTool.h
Go to the documentation of this file.
1 // EventDensityTool.h -*- C++ -*-
2 
3 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 
8 #ifndef EVENTSHAPETOOLS_EVENTDENSITYTOOL_H
9 #define EVENTSHAPETOOLS_EVENTDENSITYTOOL_H
10 
29 
30 #include <string>
31 #include "fastjet/JetDefinition.hh"
32 #include "fastjet/AreaDefinition.hh"
33 #include "fastjet/Selector.hh"
34 #include "AsgTools/AsgTool.h"
35 #include "AsgTools/ToolHandle.h"
41 
42 // Temporarily included until trigger jet-finding properly moves to DH
43 // Unfortunately, depending on the trigger PJG interface introduces
44 // a circular dependency, so we have to depend on the basic class and
45 // rely on the member & property names to discourage use of other PJGs
47 
49  public asg::AsgTool,
50  virtual public ::IEventShapeTool {
52 
53 public:
54 
56  EventDensityTool( const std::string& name);
57 
60 
63 
65  StatusCode fillEventShape() const;
67 
68 protected:
69 
71 
72 private:
73  // Temporarily included until trigger jet-finding properly moves to DH
74  ToolHandle<IPseudoJetGetter> m_trigPJGet{""};
75 
76  // DataHandles
77  SG::ReadHandleKey<PseudoJetContainer> m_inPJKey{this, "InputContainer", "", "ReadHandleKey for input PseudoJetVector"};
78  SG::WriteHandleKey<xAOD::EventShape> m_outEDKey{this, "OutputContainer", "GenericEventDensity", "WriteHandleKey for output EventDensity"};
79 
80  // Properties
81  std::string m_jetalg; // JetAlg
82  float m_jetrad; // JetRadius
83  float m_rapmin; // RapidityMax
84  float m_rapmax; // RapidityMax
85  std::string m_areadef; // AreaDefinition
86  float m_vrfact; // VoronoiRfact
87 
88  // Derived data
89  fastjet::JetDefinition m_fjjetdef;
90  fastjet::AreaDefinition m_fjareadef;
91  fastjet::Selector m_fjselector;
93 
94 };
95 
96 #endif
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
EventShape.h
IEventShapeTool
Definition: IEventShapeTool.h:23
EventDensityTool
Definition: EventDensityTool.h:50
EventDensityTool::m_trigPJGet
ToolHandle< IPseudoJetGetter > m_trigPJGet
Definition: EventDensityTool.h:74
EventDensityTool::m_useAreaFourMom
bool m_useAreaFourMom
Definition: EventDensityTool.h:92
SG::ReadHandleKey< PseudoJetContainer >
EventDensityTool::m_fjjetdef
fastjet::JetDefinition m_fjjetdef
Definition: EventDensityTool.h:89
EventDensityTool::m_jetrad
float m_jetrad
Definition: EventDensityTool.h:82
EventDensityTool::m_rapmin
float m_rapmin
Definition: EventDensityTool.h:83
IPseudoJetGetter.h
EventDensityTool::~EventDensityTool
~EventDensityTool()
Destructor:
Definition: EventDensityTool.cxx:42
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
EventDensityTool::m_jetalg
std::string m_jetalg
Definition: EventDensityTool.h:81
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
EventDensityTool::m_fjselector
fastjet::Selector m_fjselector
Definition: EventDensityTool.h:91
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
IEventShapeTool.h
EventDensityTool::m_inPJKey
SG::ReadHandleKey< PseudoJetContainer > m_inPJKey
Definition: EventDensityTool.h:77
EventDensityTool::m_outEDKey
SG::WriteHandleKey< xAOD::EventShape > m_outEDKey
Definition: EventDensityTool.h:78
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
xAOD::EventShape_v1
Data class for event shapes.
Definition: EventShape_v1.h:28
EventDensityTool::initialize
StatusCode initialize()
Initialization.
Definition: EventDensityTool.cxx:46
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
EventDensityTool::m_rapmax
float m_rapmax
Definition: EventDensityTool.h:84
EventDensityTool::m_areadef
std::string m_areadef
Definition: EventDensityTool.h:85
PseudoJetVector
std::vector< fastjet::PseudoJet > PseudoJetVector
Definition: JetConstituentFiller.cxx:17
PseudoJetContainer.h
EventDensityTool::m_fjareadef
fastjet::AreaDefinition m_fjareadef
Definition: EventDensityTool.h:90
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
ToolHandle.h
EventDensityTool::m_vrfact
float m_vrfact
Definition: EventDensityTool.h:86
AsgTool.h
EventDensityTool::fillEventShape
StatusCode fillEventShape() const
Action.
Definition: EventDensityTool.cxx:126
EventDensityTool::EventDensityTool
EventDensityTool(const std::string &name)
Constructor with parameters:
Definition: EventDensityTool.cxx:26