|
ATLAS Offline Software
|
Go to the documentation of this file.
17 size_t nConstit =
jet->numConstituents();
18 if( nConstit == 0)
return true;
40 size_t nConstit =
jet->numConstituents();
50 std::vector<JetCaloCellCalculator*> clonedCalc;
60 double w=
it.weight();
86 bool timeIsDefined(
false);
96 ) timeIsDefined =
true;
103 bool JetCalcnLeadingCells_fromCells::processCell(
const CaloCell *thisCell,
weight_t )
106 m_cell_energies.push_back(thisCell->
e());
107 m_sumE_cells+=thisCell->
e();
112 bool JetCalcOutOfTimeEnergyFraction_fromCells::processCell(
const CaloCell *thisCell,
weight_t ) {
113 m_sumE+=thisCell->
e();
117 if ( timeIsDefined ) {
119 if(fabs(time)>timecut)m_sumE_OOT+=thisCell->
e();
132 double thisNorm =
weight * fabs(
weight) * theCell->
e() * theCell->
e();
133 double thisTime = thisNorm * theCell->
time();
148 if ( timeIsDefined && ( theCell->
caloDDE()->
is_tile() == m_useTile ) )
150 double thisNorm =
weight * fabs(
weight) * theCell->
e() * theCell->
e();
151 double thisQf = thisNorm * theCell->
quality();
161 bool JetCalcQuality_fromCells::processCell(
const CaloCell *theCell,
weight_t)
175 m_totE += theCell->
e();
177 if(tileQuality > TileQualityCut)
178 m_badE += theCell->
e();
189 m_totE += theCell->
e();
190 if(theCell->
quality() > LArQualityCut)
191 m_badE += theCell->
e();
199 bool JetCalcQualityHEC_fromCells::processCell(
const CaloCell *theCell,
weight_t)
206 m_totE += theCell->
e();
207 if(theCell->
quality() > LArQualityCut)
208 m_badE += theCell->
e();
216 bool JetCalcNegativeEnergy_fromCells::processCell(
const CaloCell *theCell,
weight_t)
218 if(theCell->
e()<-2500)
219 m_totE += theCell->
e();
static const_iterator end(const xAOD::Jet *jet)
virtual bool processCell(const CaloCell *, weight_t)=0
perform calculation for a single cell
bool timeAndQualityDefined(const CaloCell *theCell)
Base class (inheriting JetCaloCalculator) for calculations accessing CaloCell directly.
virtual double e() const override final
get energy (data member) (synonym to method energy()
uint16_t provenance() const
get provenance (data member)
float time() const
get time (data member)
virtual bool setupJet(const xAOD::Jet *)=0
void addCellCalculator(JetCaloCellCalculator *c)
xAOD::MissingETComponent_v1::Weight weight_t
Type for kinematic weight.
uint8_t qual2(void) const
get quality of second PMT (data member)
const CaloDetDescrElement * caloDDE() const
get pointer to CaloDetDescrElement (data member)
static const_iterator begin(const xAOD::Jet *jet)
uint16_t quality() const
get quality (data member)
bool is_tile() const
cell belongs to Tile
void addCalculator(JetCaloCalculator *c)
Data object for each calorimeter readout cell.
def time(flags, cells_name, *args, **kw)
virtual double jetCalculation() const
return the result of the calculation
uint8_t qual1(void) const
get quality of first PMT (data member)
bool is_lar_hec() const
cell belongs to HEC
std::vector< JetCaloCalculator * > m_calculators
std::vector< JetCaloCellCalculator * > m_cellcalculators
virtual double operator()(const xAOD::Jet *jet, xAOD::JetConstitScale s=xAOD::UncalibratedJetConstituent)
convenience function to perform the full calculation on a given jet
virtual std::vector< double > process(const xAOD::Jet *jet) const
Perform all tasks correspondings to the associated JetCaloCalculators on Jet jet.