28 if(
msgLvl(MSG::DEBUG))
msg(MSG::DEBUG) <<
"Inside decorate() method" <<
endmsg;
46 maxHandle(*
jet) = fracSamplingMax;
47 samplingHandle(*
jet) = sampling;
63 decHandle(*
jet) = results[i];
66 return StatusCode::SUCCESS;
74 ATH_MSG_ERROR(
"OutputDecorKeys should not be configured manually!");
75 return StatusCode::FAILURE;
78 ATH_MSG_ERROR(
"JetCaloQualityTool needs to have its input jet container name configured!");
79 return StatusCode::FAILURE;
88#define ADDCALCULATOR( klass ) klass *c = new klass(); m_jetCalculations.addCalculator(c)
93 if ( calcN ==
"LArQuality") {
95 }
else if ( calcN ==
"TileQuality") {
96 ATH_MSG_ERROR(
"TileQuality calculated from clusters is actually identical to LArQuality. ");
97 ATH_MSG_ERROR(
"No meaningful TileQuality calculation possible from cluster yet");
98 return StatusCode::FAILURE;
102 }
else if ( calcN ==
"Timing") {
104 }
else if ( calcN ==
"HECQuality") {
108 }
else if ( calcN ==
"NegativeE") {
110 }
else if ( calcN ==
"AverageLArQF") {
112 }
else if ( calcN ==
"Centroid") {
114 }
else if ( calcN ==
"N90Constituents") {
117 }
else if ( calcN ==
"BchCorrCell") {
119 }
else if (calcN ==
"FracSamplingMax") {
134 s << std::setprecision(0) << std::fixed <<
"OotFracClusters" << timeCut;
138 c->timecut = timeCut;
151 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_VERBOSE(x)
bool msgLvl(const MSG::Level lvl) const
Handle class for adding a decoration to an object.
Fraction of Bad energy in jet. From cluster moment ENG_BAD_CELLS.
Base class to support cpu-efficient calculation on calorimeter jets either at CaloCell or constituent...
static double fracSamplingMax(const Jet *jet, int &SamplingMax)
std::string name(xAOD::JetAttribute::AttributeID id)
Jet_v1 Jet
Definition of the current "jet version".
JetContainer_v1 JetContainer
Definition of the current "jet container version".