ATLAS Offline Software
Loading...
Searching...
No Matches
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
53public:
54
56 EventDensityTool( const std::string& name);
57
60
62 StatusCode initialize();
63
65 StatusCode fillEventShape() const;
66 StatusCode fillEventShape(xAOD::EventShape* es) const;
67
68protected:
69
70 StatusCode fillEventShape(xAOD::EventShape *es , const PseudoJetVector& input ) const ;
71
72private:
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
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
std::vector< fastjet::PseudoJet > PseudoJetVector
StatusCode initialize()
Initialization.
fastjet::AreaDefinition m_fjareadef
SG::ReadHandleKey< PseudoJetContainer > m_inPJKey
SG::WriteHandleKey< xAOD::EventShape > m_outEDKey
std::string m_areadef
EventDensityTool(const std::string &name)
Constructor with parameters:
ToolHandle< IPseudoJetGetter > m_trigPJGet
~EventDensityTool()
Destructor:
StatusCode fillEventShape() const
Action.
fastjet::JetDefinition m_fjjetdef
fastjet::Selector m_fjselector
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
Base class for the dual-use tool implementation classes.
Definition AsgTool.h:47
EventShape_v1 EventShape
Definition of the current event format version.
Definition EventShape.h:16