|
ATLAS Offline Software
|
Go to the documentation of this file.
36 return StatusCode::FAILURE;
44 return StatusCode::SUCCESS;
55 if( !incoll.isValid() ) {
58 return StatusCode::SUCCESS;
69 ATH_CHECK( outcoll.record(std::move(pjcont)) );
71 return StatusCode::SUCCESS;
77 std::vector<fastjet::PseudoJet> vpj;
79 #ifndef GENERATIONBASE
88 [[maybe_unused]]
const EventContext& unused_ctx = ctx;
93 auto extractor = std::make_unique<IParticleExtractor>(&cont,
m_label,
m_isGhost);
94 ATH_MSG_DEBUG(
"Created extractor: " << extractor->toString(0));
98 for(fastjet::PseudoJet& pj : vpj) {pj *=
ghostscale;}
102 auto pjcont = std::make_unique<PseudoJetContainer>(std::move(extractor), vpj);
103 ATH_MSG_DEBUG(
"New PseudoJetContainer size " << pjcont->size());
109 std::vector<fastjet::PseudoJet>
111 #ifndef GENERATIONBASE
118 #ifndef GENERATIONBASE
119 std::vector<fastjet::PseudoJet>
Gaudi::Property< bool > m_negEnergyAsGhosts
Flag indicating to treat objects with E<0 as ghosts (useful for HI)
bool m_ufo
True if inputs are PFlow.
std::vector< fastjet::PseudoJet > PFlowsToPJs(const xAOD::IParticleContainer &ips, bool skipNegativeEnergy, bool useChargedPFOs, bool useNeutralPFOs, bool useChargedPV, bool useChargedPUsideband, bool isUFO)
Gaudi::Property< bool > m_skipNegativeEnergy
Flag indicating to skip objects with E<0.
std::string find(const std::string &s)
return a remapped string
bool m_isGhost
Internal steering flags Set in initialize()
SG::ReadHandleKey< xAOD::VertexContainer > m_vertexContainer_key
Gaudi::Property< bool > m_useChargedPUsideband
Flag for PFlow sideband definition.
virtual void print() const
Dump to properties to the log.
#define ATH_MSG_VERBOSE(x)
const std::string & key() const
Return the StoreGate ID for the referenced object.
virtual std::unique_ptr< PseudoJetContainer > createPJContainer(const xAOD::IParticleContainer &cont, const EventContext &ctx) const
Method to construct the PseudoJetContainer and record in StoreGate.
std::vector< fastjet::PseudoJet > createPseudoJets(const xAOD::IParticleContainer &) const
virtual StatusCode initialize() override final
Athena algorithm's Hooks.
virtual StatusCode execute(const EventContext &ctx) const override final
SG::ReadCondHandle< T > makeHandle(const SG::ReadCondHandleKey< T > &key, const EventContext &ctx=Gaudi::Hive::currentContext())
Gaudi::Property< bool > m_useCharged
Flag to define if charged PFOs / FEs should be considered.
Gaudi::Property< bool > m_useNeutral
Flag to define if neutral PFOs / FEs should be considered.
std::vector< fastjet::PseudoJet > EMToposToPJs(const xAOD::IParticleContainer &ips, bool skipNegativeEnergy)
constexpr float ghostscale
std::vector< fastjet::PseudoJet > ByVertexPFlowsToPJs(const xAOD::IParticleContainer &ips, const xAOD::VertexContainer *pvs, bool skipNegativeEnergy, bool useChargedPFOs, bool useNeutralPFOs, bool isUFO)
::StatusCode StatusCode
StatusCode definition for legacy code.
SG::WriteHandleKey< PseudoJetContainer > m_outcoll
Output collection name.
Gaudi::Property< bool > m_byVertex
Flag for by-vertex jet reconstruction.
bool m_pflow
True if inputs are EM-scale topo clusters.
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
Gaudi::Property< std::string > m_label
Label for the collection.
bool m_emtopo
Determines whether the PJs should be made ghosts.
SG::ReadHandleKey< xAOD::IParticleContainer > m_incoll
Input collection name.
std::vector< fastjet::PseudoJet > IParticlesToPJs(const xAOD::IParticleContainer &ips, bool skipNegativeEnergy)
#define ATH_MSG_WARNING(x)
Gaudi::Property< bool > m_useChargedPV
Flag to define if charged PFOs / FEs should be matched to PV.