ATLAS Offline Software
Loading...
Searching...
No Matches
EventDensityTool Class Reference

A dual-use tool to compute event density using FastJet. More...

#include <EventDensityTool.h>

Inheritance diagram for EventDensityTool:
Collaboration diagram for EventDensityTool:

Public Member Functions

 EventDensityTool (const std::string &name)
 Constructor with parameters:
 ~EventDensityTool ()
 Destructor:
StatusCode initialize ()
 Initialization.
StatusCode fillEventShape () const
 Action.
StatusCode fillEventShape (xAOD::EventShape *es) const
 Fills the given EventShape object.
virtual void print () const
 Print the state of the tool.
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode sysInitialize () override
 Perform system initialization for an algorithm.
virtual StatusCode sysStart () override
 Handle START transition.
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles.
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles.
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T, V, H > &t)
void updateVHKA (Gaudi::Details::PropertyBase &)
MsgStream & msg () const
bool msgLvl (const MSG::Level lvl) const
Additional helper functions, not directly mimicking Athena
template<class T>
const T * getProperty (const std::string &name) const
 Get one of the tool's properties.
const std::string & msg_level_name () const __attribute__((deprecated))
 A deprecated function for getting the message level's name.
const std::string & getName (const void *ptr) const
 Get the name of an object that is / should be in the event store.
SG::sgkey_t getKey (const void *ptr) const
 Get the (hashed) key of an object that is in the event store.

Protected Member Functions

StatusCode fillEventShape (xAOD::EventShape *es, const PseudoJetVector &input) const
void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed.

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t

Private Member Functions

Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey>

Private Attributes

ToolHandle< IPseudoJetGetterm_trigPJGet {""}
SG::ReadHandleKey< PseudoJetContainerm_inPJKey {this, "InputContainer", "", "ReadHandleKey for input PseudoJetVector"}
SG::WriteHandleKey< xAOD::EventShapem_outEDKey {this, "OutputContainer", "GenericEventDensity", "WriteHandleKey for output EventDensity"}
std::string m_jetalg
float m_jetrad
float m_rapmin
float m_rapmax
std::string m_areadef
float m_vrfact
fastjet::JetDefinition m_fjjetdef
fastjet::AreaDefinition m_fjareadef
fastjet::Selector m_fjselector
bool m_useAreaFourMom
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default)
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
bool m_varHandleArraysDeclared

Detailed Description

A dual-use tool to compute event density using FastJet.

Properties:

  • JetAlgorithm: Kt, AntiKt or CamKt
  • JetRadius: Jet size parameter, e.g. 0.4
  • JetInput: Psedudojet getter for the inputs
  • AbsRapidityMin: Minimum |y| for selecting jets.
  • AbsRapidityMax: Maximum |y| for selecting jets.
  • AreaDefinition: Voronoi, Active or ActiveFourVector
  • VoronoiRfact - Multiplicative factor for Voronoi radius
  • OutputContainer: Output container name
  • VariableName - Name for the variable used to store rho

Definition at line 48 of file EventDensityTool.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< AlgTool > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ EventDensityTool()

EventDensityTool::EventDensityTool ( const std::string & name)

Constructor with parameters:

Definition at line 26 of file EventDensityTool.cxx.

27 : asg::AsgTool(name),
29{
30 declareProperty("JetAlgorithm", m_jetalg = "Kt");
31 declareProperty("JetRadius", m_jetrad = 0.4);
32 declareProperty("AbsRapidityMin", m_rapmin = 0.0);
33 declareProperty("AbsRapidityMax", m_rapmax = 2.0);
34 declareProperty("AreaDefinition", m_areadef = "Voronoi");
35 declareProperty("VoronoiRfact", m_vrfact = 1.0);
36 declareProperty("UseFourMomArea", m_useAreaFourMom);
37 declareProperty("TrigPseudoJetGetter", m_trigPJGet);
38}
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
std::string m_areadef
ToolHandle< IPseudoJetGetter > m_trigPJGet

◆ ~EventDensityTool()

EventDensityTool::~EventDensityTool ( )

Destructor:

Definition at line 42 of file EventDensityTool.cxx.

42{}

Member Function Documentation

◆ declareGaudiProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > & hndl,
const SG::VarHandleKeyType &  )
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158 {
160 hndl.value(),
161 hndl.documentation());
162
163 }

◆ declareProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( Gaudi::Property< T, V, H > & t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145 {
146 typedef typename SG::HandleClassifier<T>::type htype;
148 }
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>

◆ detStore()

const ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

◆ evtStore()

ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase & ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ fillEventShape() [1/3]

StatusCode EventDensityTool::fillEventShape ( ) const
virtual

Action.

Implements IEventShapeTool.

Definition at line 126 of file EventDensityTool.cxx.

126 {
127
128 ATH_MSG_DEBUG("Begin fillEventShape()");
129
130 std::unique_ptr<xAOD::EventShape> eventShape(std::make_unique<xAOD::EventShape>());
131 std::unique_ptr<xAOD::EventShapeAuxInfo> eventShapeaux(std::make_unique<xAOD::EventShapeAuxInfo>());
132 eventShape->setStore( eventShapeaux.get() );
133
134 // Change the order: first fill the object and then record
135 ATH_CHECK(fillEventShape(eventShape.get()));
136
137 auto h_out = makeHandle(m_outEDKey);
138 if ( ! h_out.record(std::move(eventShape), std::move(eventShapeaux) )) {
139 ATH_MSG_WARNING("Unable to write new EventShape and aux store to event store: " << m_outEDKey.key());
140 } else {
141 ATH_MSG_DEBUG("Created new EventShape container: " << m_outEDKey.key());
142 }
143
144 return StatusCode::SUCCESS;
145}
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_WARNING(x)
#define ATH_MSG_DEBUG(x)
SG::WriteHandleKey< xAOD::EventShape > m_outEDKey
StatusCode fillEventShape() const
Action.
auto makeHandle(const SG::View *view, const KEY &key, const EventContext &ctx)
Create a view handle from a handle key.
Definition ViewHelper.h:273

◆ fillEventShape() [2/3]

StatusCode EventDensityTool::fillEventShape ( xAOD::EventShape * ) const
virtual

Fills the given EventShape object.

Implements IEventShapeTool.

Definition at line 148 of file EventDensityTool.cxx.

148 {
149
150 if(!m_inPJKey.key().empty() && m_trigPJGet.empty()) {
151 auto h_in = makeHandle(m_inPJKey);
152 if( ! h_in.isValid() ) {
153 ATH_MSG_ERROR("No input PseudoJetContainer "<< m_inPJKey.key() );
154 return StatusCode::FAILURE;
155 }
156 if ( h_in->size() == 0 ) {
157 ATH_MSG_DEBUG( "Input PseudoJetContainer size()=0 for pseudojets from "<< m_inPJKey.key() );
158 } else {
159 ATH_MSG_DEBUG("Retrieved input pseudojets " << m_inPJKey.key() << " , count: " << h_in->size());
160 }
161 return fillEventShape(eventShape, *(h_in->casVectorPseudoJet()));
162 }
163 // { FIXME: To be removed when trigger moves to DataHandles fully
164 else if(m_inPJKey.key().empty() && !m_trigPJGet.empty()) {
165 const PseudoJetVector& ppjv = *(m_trigPJGet->get());
166 // !!! FIXME !!! Downgraded ERROR to WARNING and no FAILURE
167 if ( ppjv.size() == 0 ) {
168 ATH_MSG_WARNING( "Input PseudoJetVector size()=0 for pseudojets from "<< m_trigPJGet.name() );
169 //return StatusCode::FAILURE;
170 } else {
171 ATH_MSG_DEBUG("Retrieved input pseudojets " << m_trigPJGet.name() << " , count: " << ppjv.size());
172 }
173 return fillEventShape(eventShape, ppjv);
174 }
175 // } FIXME
176
177 return StatusCode::FAILURE;
178}
#define ATH_MSG_ERROR(x)
std::vector< fastjet::PseudoJet > PseudoJetVector
SG::ReadHandleKey< PseudoJetContainer > m_inPJKey

◆ fillEventShape() [3/3]

StatusCode EventDensityTool::fillEventShape ( xAOD::EventShape * es,
const PseudoJetVector & input ) const
protected

Definition at line 182 of file EventDensityTool.cxx.

183 {
184 ATH_MSG_DEBUG("Input pseudojet count: " << pjv.size());
185 ATH_MSG_DEBUG("Event shape container address: " << eventShape);
186
187 for(const auto & pj : pjv) {
188 ATH_MSG_DEBUG(" pj input e="<<pj.e() << " pz="<<pj.pz() << " px="<<pj.px() );
189 }
190 // Find jets.
191 std::unique_ptr<ClusterSequenceArea> pcsa=std::make_unique<ClusterSequenceArea>(pjv, m_fjjetdef, m_fjareadef);
192 ATH_MSG_DEBUG("Found jet count: " << pcsa->inclusive_jets().size());
193
194 // Extract rho.
195 double rho, sigma, area;
196 pcsa->get_median_rho_and_sigma(m_fjselector, m_useAreaFourMom, rho, sigma, area);
197 ATH_MSG_DEBUG(" calculated rho="<< rho);
198
199 // Record rho.
200
201 // Fill the EventShape object
202 const static SG::AuxElement::Accessor<float> rhoDec("Density");
203 const static SG::AuxElement::Accessor<float> sigmaDec("DensitySigma");
204 const static SG::AuxElement::Accessor<float> areaDec("DensityArea");
205 rhoDec(*eventShape) = rho;
206 sigmaDec(*eventShape) = sigma;
207 areaDec(*eventShape) = area;
208
209 ATH_MSG_DEBUG("Recorded event density: = " << 0.001*rho << " GeV");
210
211 return StatusCode::SUCCESS;
212}
double area(double R)
fastjet::AreaDefinition m_fjareadef
fastjet::JetDefinition m_fjjetdef
fastjet::Selector m_fjselector

◆ getKey()

SG::sgkey_t asg::AsgTool::getKey ( const void * ptr) const
inherited

Get the (hashed) key of an object that is in the event store.

This is a bit of a special one. StoreGateSvc and xAOD::TEvent both provide ways for getting the SG::sgkey_t key for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.

In order to allow tools to efficiently perform this operation, they can use this helper function.

See also
asg::AsgTool::getName
Parameters
ptrThe bare pointer to the object that the event store should know about
Returns
The hashed key of the object in the store. If not found, an invalid (zero) key.

Definition at line 119 of file AsgTool.cxx.

119 {
120
121#ifdef XAOD_STANDALONE
122 // In case we use @c xAOD::TEvent, we have a direct function call
123 // for this.
124 return evtStore()->event()->getKey( ptr );
125#else
126 const SG::DataProxy* proxy = evtStore()->proxy( ptr );
127 return ( proxy == nullptr ? 0 : proxy->sgkey() );
128#endif // XAOD_STANDALONE
129 }
ServiceHandle< StoreGateSvc > & evtStore()

◆ getName()

const std::string & asg::AsgTool::getName ( const void * ptr) const
inherited

Get the name of an object that is / should be in the event store.

This is a bit of a special one. StoreGateSvc and xAOD::TEvent both provide ways for getting the std::string name for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.

In order to allow tools to efficiently perform this operation, they can use this helper function.

See also
asg::AsgTool::getKey
Parameters
ptrThe bare pointer to the object that the event store should know about
Returns
The string name of the object in the store. If not found, an empty string.

Definition at line 106 of file AsgTool.cxx.

106 {
107
108#ifdef XAOD_STANDALONE
109 // In case we use @c xAOD::TEvent, we have a direct function call
110 // for this.
111 return evtStore()->event()->getName( ptr );
112#else
113 const SG::DataProxy* proxy = evtStore()->proxy( ptr );
114 static const std::string dummy = "";
115 return ( proxy == nullptr ? dummy : proxy->name() );
116#endif // XAOD_STANDALONE
117 }

◆ getProperty()

template<class T>
const T * asg::AsgTool::getProperty ( const std::string & name) const
inherited

Get one of the tool's properties.

◆ initialize()

StatusCode EventDensityTool::initialize ( void )
virtual

Initialization.

Reimplemented from asg::AsgTool.

Definition at line 46 of file EventDensityTool.cxx.

46 {
47 ATH_MSG_INFO ("Initializing " << name() << "...");
48
49 // Initialise output handle
50 ATH_CHECK( m_outEDKey.initialize() );
51
52 // Fetch the fastjet algorithm enum
53 JetAlgorithm fjalg;
54 if ( m_jetalg == "Kt" ) fjalg = fastjet::kt_algorithm;
55 else if ( m_jetalg == "AntiKt" ) fjalg = fastjet::antikt_algorithm;
56 else if ( m_jetalg == "CamKt" ) fjalg = fastjet::cambridge_algorithm;
57 else {
58 ATH_MSG_ERROR("Invalid jet algorithm name: " << m_jetalg);
59 ATH_MSG_ERROR("Allowed values are Kt, CamKt, AntiKt, etc.");
60 return StatusCode::FAILURE;
61 }
62
63 // Build jet definition.
64 m_fjjetdef = JetDefinition(fjalg, m_jetrad);
65
66 // Build area definition.
67 if ( m_areadef == "Voronoi" ) {
68 m_fjareadef = AreaDefinition(fastjet::voronoi_area, VoronoiAreaSpec(m_vrfact));
69 } else if ( m_areadef == "Active" || m_useAreaFourMom ) {
70 // Default is fine here for now.
71 // Later might want to switch to seeds and binning used in jet reco.
72 // See JetRec/JetFinder for that.
73 } else {
74 ATH_MSG_WARNING("Unsupported area option: " << m_areadef);
75 return StatusCode::FAILURE;
76 }
77
78 // Build the jet selector.
79 if ( m_rapmin >= 0.0 && m_rapmax > m_rapmin ) {
80 m_fjselector = fastjet::SelectorAbsRapRange(m_rapmin, m_rapmax);
81 } else {
82 ATH_MSG_WARNING("Invalid absolute rapidity range: ("
83 << m_rapmin << ", " << m_rapmax << ")");
84 return StatusCode::FAILURE;
85 }
86 ATH_MSG_INFO("Configured properties:");
87 ATH_MSG_INFO(" JetAlgorithm: " << m_jetalg);
88 ATH_MSG_INFO(" JetRadius: " << m_jetrad);
89 if(!m_inPJKey.key().empty()) {
90 ATH_MSG_INFO(" InputContainer: " << m_inPJKey.key());
91 } else {
92 ATH_MSG_INFO(" TrigPJGetter: " << m_trigPJGet.name());
93 }
94 ATH_MSG_INFO(" AbsRapidityMin: " << m_rapmin);
95 ATH_MSG_INFO(" AbsRapidityMax: " << m_rapmax);
96 ATH_MSG_INFO(" AreaDefinition: " << m_areadef);
97 ATH_MSG_INFO(" VoronoiRfact: " << m_vrfact);
98 ATH_MSG_INFO(" OutputContainer: " << m_outEDKey.key());
99 ATH_MSG_INFO("Derived properties:");
100 ATH_MSG_INFO(" Fastjet jet defn: " << m_fjjetdef.description());
101 ATH_MSG_INFO(" Fastjet area defn: " << m_fjareadef.description());
102 ATH_MSG_INFO(" Fastjet jet selector: " << m_fjselector.description());
103 ATH_MSG_INFO(" Use area four-momentum: " << m_useAreaFourMom);
104
105 // Input sources
106 if(!m_inPJKey.key().empty() && m_trigPJGet.empty()) {
107 ATH_CHECK( m_inPJKey.initialize() );
108 }
109 // { FIXME: To be removed when trigger moves to DataHandles fully
110 else if(m_inPJKey.key().empty() && !m_trigPJGet.empty()) {
111 ATH_CHECK( m_trigPJGet.retrieve() );
112 }
113 // } FIXME
114 else {
115 ATH_MSG_ERROR( "Inconsistent/ambiguous input setup."
116 << " InPJKey: " << m_inPJKey.key()
117 << " TrigPJGetter: " << m_trigPJGet.name() );
118 return StatusCode::FAILURE;
119 }
120
121 return StatusCode::SUCCESS;
122}
#define ATH_MSG_INFO(x)

◆ inputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ msg()

MsgStream & AthCommonMsg< AlgTool >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24 {
25 return this->msgStream();
26 }

◆ msg_level_name()

const std::string & asg::AsgTool::msg_level_name ( ) const
inherited

A deprecated function for getting the message level's name.

Instead of using this, weirdly named function, user code should get the string name of the current minimum message level (in case they really need it...), with:

MSG::name( msg().level() )

This function's name doesn't follow the ATLAS coding rules, and as such will be removed in the not too distant future.

Returns
The string name of the current minimum message level that's printed

Definition at line 101 of file AsgTool.cxx.

101 {
102
103 return MSG::name( msg().level() );
104 }
MsgStream & msg() const
const std::string & name(Level lvl)
Convenience function for translating message levels to strings.
Definition MsgLevel.cxx:19

◆ msgLvl()

bool AthCommonMsg< AlgTool >::msgLvl ( const MSG::Level lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30 {
31 return this->msgLevel(lvl);
32 }

◆ outputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ print()

◆ renounce()

std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > AthCommonDataStore< AthCommonMsg< AlgTool > >::renounce ( T & h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381 {
382 h.renounce();
384 }
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::renounceArray ( SG::VarHandleKeyArray & handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364 {
366 }

◆ sysInitialize()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysInitialize ( )
overridevirtualinherited

Perform system initialization for an algorithm.

We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.

Reimplemented in asg::AsgMetadataTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and DerivationFramework::CfAthAlgTool.

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::updateVHKA ( Gaudi::Details::PropertyBase & )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308 {
309 // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310 // << " size: " << m_vhka.size() << endmsg;
311 for (auto &a : m_vhka) {
313 for (auto k : keys) {
314 k->setOwner(this);
315 }
316 }
317 }
std::vector< SG::VarHandleKeyArray * > m_vhka

Member Data Documentation

◆ m_areadef

std::string EventDensityTool::m_areadef
private

Definition at line 85 of file EventDensityTool.h.

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_fjareadef

fastjet::AreaDefinition EventDensityTool::m_fjareadef
private

Definition at line 90 of file EventDensityTool.h.

◆ m_fjjetdef

fastjet::JetDefinition EventDensityTool::m_fjjetdef
private

Definition at line 89 of file EventDensityTool.h.

◆ m_fjselector

fastjet::Selector EventDensityTool::m_fjselector
private

Definition at line 91 of file EventDensityTool.h.

◆ m_inPJKey

SG::ReadHandleKey<PseudoJetContainer> EventDensityTool::m_inPJKey {this, "InputContainer", "", "ReadHandleKey for input PseudoJetVector"}
private

Definition at line 77 of file EventDensityTool.h.

77{this, "InputContainer", "", "ReadHandleKey for input PseudoJetVector"};

◆ m_jetalg

std::string EventDensityTool::m_jetalg
private

Definition at line 81 of file EventDensityTool.h.

◆ m_jetrad

float EventDensityTool::m_jetrad
private

Definition at line 82 of file EventDensityTool.h.

◆ m_outEDKey

SG::WriteHandleKey<xAOD::EventShape> EventDensityTool::m_outEDKey {this, "OutputContainer", "GenericEventDensity", "WriteHandleKey for output EventDensity"}
private

Definition at line 78 of file EventDensityTool.h.

78{this, "OutputContainer", "GenericEventDensity", "WriteHandleKey for output EventDensity"};

◆ m_rapmax

float EventDensityTool::m_rapmax
private

Definition at line 84 of file EventDensityTool.h.

◆ m_rapmin

float EventDensityTool::m_rapmin
private

Definition at line 83 of file EventDensityTool.h.

◆ m_trigPJGet

ToolHandle<IPseudoJetGetter> EventDensityTool::m_trigPJGet {""}
private

Definition at line 74 of file EventDensityTool.h.

74{""};

◆ m_useAreaFourMom

bool EventDensityTool::m_useAreaFourMom
private

Definition at line 92 of file EventDensityTool.h.

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< AlgTool > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.

◆ m_vrfact

float EventDensityTool::m_vrfact
private

Definition at line 86 of file EventDensityTool.h.


The documentation for this class was generated from the following files: