|
ATLAS Offline Software
|
Go to the documentation of this file.
6 #ifndef JETREC_JETCLUSTERER_H
7 #define JETREC_JETCLUSTERER_H
35 #include "fastjet/PseudoJet.hh"
36 #include "fastjet/AreaDefinition.hh"
37 #include "fastjet/JetDefinition.hh"
60 std::pair<std::unique_ptr<xAOD::JetContainer>, std::unique_ptr<SG::IAuxStore> >
getJets()
const override;
83 Gaudi::Property<std::string>
m_jetRank {
this,
"jetRankName",
"jetRank",
"name for accessor for jet rank"};
86 Gaudi::Property<std::string>
m_jetalg {
this,
"JetAlgorithm",
"AntiKt",
"alg type : AntiKt, Kt, CA..."};
87 Gaudi::Property<float>
m_jetrad {
this,
"JetRadius", 0.4 ,
"jet size parameter"};
88 Gaudi::Property<float>
m_ptmin {
this,
"PtMin", 0.0,
"pT min in MeV"};
89 Gaudi::Property<float>
m_ghostarea {
this,
"GhostArea", 0.0,
"Area for ghosts. 0==>no ghosts."};
90 Gaudi::Property<int>
m_ranopt {
this,
"RandomOption", 1,
"Rand option: 0=fj default, 1=run/event"};
92 Gaudi::Property<int>
m_inputType {
this,
"JetInputType", 0,
"input type as in xAOD::JetInput (see xAODJet/JetContainerInfo.h)"};
99 Gaudi::Property<float>
m_minrad {
this,
"VariableRMinRadius", -1.0,
"Variable-R min radius" };
100 Gaudi::Property<float>
m_massscale {
this,
"VariableRMassScale", -1.0,
"Variable-R mass scale" };
SG::ReadHandleKey< xAOD::EventInfo > m_eventinfokey
Handle to EventInfo. This is used to get the evt&run number to set the Ghost area random seeds.
Gaudi::Property< std::string > m_jetalg
Helper class to provide type-safe access to aux data.
Gaudi::Property< float > m_ghostarea
JetClusterer(const std::string &name)
Gaudi::Property< int > m_inputType
Gaudi::Property< int > m_ranopt
Gaudi::Property< float > m_jetrad
SG::WriteHandleKey< jet::ClusterSequence > m_clusterSequence
Gaudi::Property< float > m_massscale
fastjet::AreaDefinition buildAreaDefinition(bool &seedsok) const
Build the area definition when running with area calculation. The seedsok flag is set to false when e...
fastjet::JetAlgorithm m_fjalg
StatusCode initialize() override
Dummy implementation of the initialisation function.
SG::ReadHandleKey< PseudoJetContainer > m_inputPseudoJets
Handle Input PseudoJetContainer.
Gaudi::Property< float > m_minrad
::StatusCode StatusCode
StatusCode definition for legacy code.
void seedsFromEventInfo(const xAOD::EventInfo *ei, std::vector< int > &seeds)
Fill seeds vector from run & event number. This functio is separated from the class so it's easier to...
std::unique_ptr< fastjet::ClusterSequence > buildClusterSequence(const PseudoJetVector *pseudoJetvector) const
Used to create the cluster sequence.
SG::AuxElement::Accessor< int > m_jetRankAccessor
Class describing the basic event information.
std::vector< fastjet::PseudoJet > PseudoJetVector
Class describing a Vertex.
SG::WriteHandleKey< PseudoJetVector > m_finalPseudoJets
used to build the key under which the final PJ will be stored in evtStore()
std::pair< std::unique_ptr< xAOD::JetContainer >, std::unique_ptr< SG::IAuxStore > > getJets() const override
Return the final jets with their aux store.
Gaudi::Property< float > m_ptmin
Concrete class that implements the recording of jets & aux container to StoreGate via an externally p...
Gaudi::Property< std::string > m_jetRank
Base class for elements of a container that can have aux data.
void processPseudoJet(const fastjet::PseudoJet &pj, const PseudoJetContainer &pjCont, xAOD::JetContainer *jets, const xAOD::Vertex *vertex) const
translate to xAOD::Jet