22#ifndef PseudoJetAlgorithm_H
23#define PseudoJetAlgorithm_H
26#include "fastjet/PseudoJet.hh"
45 virtual StatusCode
initialize() override final;
73 Gaudi::Property<std::string>
m_label{
this,
"Label",
"",
"String label identifying the pseudojet type"};
76 Gaudi::Property<bool>
m_skipNegativeEnergy{
this,
"SkipNegativeEnergy",
false,
"Whether to skip negative energy inputs"};
79 Gaudi::Property<bool>
m_negEnergyAsGhosts{
this,
"TreatNegativeEnergyAsGhost",
false,
"Whether to convert negative energy inputs into ghosts"};
82 Gaudi::Property<bool>
m_useCharged{
this,
"UseCharged",
true,
"Whether to use charged PFOs/FEs"};
85 Gaudi::Property<bool>
m_useNeutral{
this,
"UseNeutral",
true,
"Whether to use neutral PFOs/FEs"};
88 Gaudi::Property<bool>
m_useChargedPV{
this,
"UseChargedPV",
true,
"Whether to use charged PFOs/FEs matched to the PV"};
91 Gaudi::Property<bool>
m_useChargedPUsideband{
this,
"UseChargedPUsideband",
false,
"Whether to use charged PU sideband only"};
94 Gaudi::Property<bool>
m_byVertex{
this,
"DoByVertex",
false,
"True if jets should be reconstructed by vertex"};
DataVector< IParticle > IParticleContainer
void print(char *figname, TCanvas *c1)
the base class for EventLoop reentrant algorithms
AnaReentrantAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
constructor with parameters
Gaudi::Property< bool > m_useNeutral
Flag to define if neutral PFOs / FEs should be considered.
bool m_pflow
True if inputs are EM-scale topo clusters.
Gaudi::Property< bool > m_useChargedPV
Flag to define if charged PFOs / FEs should be matched to PV.
std::vector< fastjet::PseudoJet > createPseudoJets(const xAOD::IParticleContainer &) const
bool m_ufo
True if inputs are PFlow.
Gaudi::Property< std::string > m_label
Label for the collection.
Gaudi::Property< bool > m_useChargedPUsideband
Flag for PFlow sideband definition.
Gaudi::Property< bool > m_useCharged
Flag to define if charged PFOs / FEs should be considered.
SG::WriteHandleKey< PseudoJetContainer > m_outcoll
Output collection name.
bool m_emtopo
Determines whether the PJs should be made ghosts.
bool m_isGhost
Internal steering flags Set in initialize()
SG::ReadHandleKey< xAOD::VertexContainer > m_vertexContainer_key
Gaudi::Property< bool > m_skipNegativeEnergy
Flag indicating to skip objects with E<0.
virtual std::unique_ptr< PseudoJetContainer > createPJContainer(const xAOD::IParticleContainer &cont, const EventContext &ctx) const
Method to construct the PseudoJetContainer and record in StoreGate.
Gaudi::Property< bool > m_byVertex
Flag for by-vertex jet reconstruction.
virtual StatusCode execute(const EventContext &ctx) const override final
virtual StatusCode initialize() override final
Athena algorithm's Hooks.
Gaudi::Property< bool > m_negEnergyAsGhosts
Flag indicating to treat objects with E<0 as ghosts (useful for HI)
PseudoJetAlgorithm(const std::string &n, ISvcLocator *l)
SG::ReadHandleKey< xAOD::IParticleContainer > m_incoll
Input collection name.
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.
This module defines the arguments passed from the BATCH driver to the BATCH worker.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.