7#ifndef JETUTILS_JETCALOHELPER_H
8#define JETUTILS_JETCALOHELPER_H
123#define JETCALCFUNCDECL( cname, id, others) \
125 virtual bool setupJet(const xAOD::Jet* jet); \
126 virtual bool processConstituent(xAOD::JetConstituentVector::iterator& iter); \
127 double jetCalculation() const ; \
128 cname(xAOD::JetAttribute::AttributeID i=id) : JetCaloCalculator( i ) { others } \
129 virtual JetCaloCalculator* clone() const {return new cname(*this); }
This file defines helper classes to deal with jet constituents.
virtual ~JetCaloCalculations()
JetCaloCalculations(bool ownCalc=true)
const JetCaloCalculator * at(size_t i) const
std::vector< JetCaloCalculator * > m_calculators
void addCalculator(JetCaloCalculator *c)
size_t numCalculators() const
Base class to support cpu-efficient calculation on calorimeter jets either at CaloCell or constituent...
virtual double jetCalculation() const
return the result of the calculation
virtual bool setupJet(const xAOD::Jet *)=0
virtual JetCaloCalculator * clone() const =0
Clone. Base class should not be cloned.
virtual bool processConstituent(xAOD::JetConstituentVector::iterator &)
Perform 1 calculation step using 1 constituent.
virtual std::string name() const
virtual bool setupEvent()
virtual double operator()(const xAOD::Jet *jet, xAOD::JetConstitScale s=xAOD::UncalibratedJetConstituent)
convenience function to perform the full calculation on a given jet
void setExtractor(const CaloConstitHelpers::CaloConstitExtractor *ex)
const CaloConstitHelpers::CaloConstitExtractor * m_constitExtractor
void setName(const std::string &n)
xAOD::JetAttribute::AttributeID m_id
virtual ~JetCaloCalculator()
MomentType
Enums to identify different moments.
const std::string process
Jet_v1 Jet
Definition of the current "jet version".
@ UncalibratedJetConstituent