ATLAS Offline Software
Loading...
Searching...
No Matches
CP::IsolationCorrectionTool Class Reference

#include <IsolationCorrectionTool.h>

Inheritance diagram for CP::IsolationCorrectionTool:
Collaboration diagram for CP::IsolationCorrectionTool:

Public Types

Definition of the StoreGate-like object's definition
typedef ServiceHandle< StoreGateSvcMetaStore_t
 Type of the metadata store object in Athena.
typedef const ServiceHandle< StoreGateSvc > & MetaStorePtr_t
 Type of the metadata store pointer in standalone mode.

Public Member Functions

virtual StatusCode sysInitialize ()
 Function initialising the tool in the correct way in Athena.
virtual void print () const
 Print the state of the tool.
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode sysStart () override
 Handle START transition.
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles.
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles.
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T, V, H > &t)
void updateVHKA (Gaudi::Details::PropertyBase &)
MsgStream & msg () const
bool msgLvl (const MSG::Level lvl) const
Functions providing access to the input/output metadata
MetaStorePtr_t inputMetaStore () const
 Accessor for the input metadata store.
MetaStorePtr_t outputMetaStore () const
 Accessor for the output metadata store.
Additional helper functions, not directly mimicking Athena
template<class T>
const T * getProperty (const std::string &name) const
 Get one of the tool's properties.
const std::string & msg_level_name () const __attribute__((deprecated))
 A deprecated function for getting the message level's name.
const std::string & getName (const void *ptr) const
 Get the name of an object that is / should be in the event store.
SG::sgkey_t getKey (const void *ptr) const
 Get the (hashed) key of an object that is in the event store.

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed.
Callback functions helping in metadata reading/writing
void setUseIncidents (const bool flag)
virtual void handle (const Incident &inc)
 Function receiving incidents from IncidentSvc/TEvent.
virtual StatusCode beginInputFile ()
 Function called when a new input file is opened.
virtual StatusCode endInputFile ()
 Function called when the currently open input file got completely processed.
virtual StatusCode beginEvent ()
 Function called when a new events is loaded.
virtual StatusCode metaDataStop ()
 Function called when the tool should write out its metadata.

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t

Private Member Functions

virtual ASG_TOOL_CLASS3(IsolationCorrectionTool, IIsolationCorrectionTool, CP::ISystematicsTool, CP::IReentrantSystematicsTool) public ~IsolationCorrectionTool ()
virtual StatusCode initialize () override final
virtual CP::CorrectionCode applyCorrection (xAOD::Egamma &) override final
virtual CP::CorrectionCode CorrectLeakage (xAOD::Egamma &) override final
virtual CP::CorrectionCode correctedCopy (const xAOD::Egamma &, xAOD::Egamma *&) override final
virtual CP::SystematicSet affectingSystematics () const override final
 the list of all systematics this tool can be affected by
virtual bool isAffectedBySystematic (const CP::SystematicVariation &systematic) const override final
 Declare the interface that this class provides.
virtual CP::SystematicSet recommendedSystematics () const override final
 the list of all systematics this tool recommends to use
virtual StatusCode applySystematicVariation (const CP::SystematicSet &systConfig) override final
 effects: configure this tool for the given list of systematic variations.
virtual float GetPtCorrectedIsolation (const xAOD::Egamma &, xAOD::Iso::IsolationType) override
virtual float GetPtCorrection (const xAOD::Egamma &, xAOD::Iso::IsolationType) const override final
virtual float GetDDCorrection (const xAOD::Egamma &, xAOD::Iso::IsolationType) override final
void Print ()
float GetEtaPointing (const xAOD::Egamma *input)
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey>

Private Attributes

SG::ReadHandleKey< xAOD::EventInfom_eventInfoKey
SG::ReadHandleKey< xAOD::EventShapem_centralEventShapeKey
SG::ReadHandleKey< xAOD::EventShapem_forwardEventShapeKey
std::string m_corr_file
std::string m_corr_ddshift_file
std::string m_corr_ddsmearing_file
IsolationCorrectionm_isol_corr
std::string m_tool_ver_str
std::string m_corr_etaEDParPU_file
std::string m_corr_etaEDPar_mc_corr_file
std::map< xAOD::Iso::IsolationType, std::unique_ptr< TGraph > > m_map_isotype_zetaPU
std::map< xAOD::Iso::IsolationType, std::unique_ptr< TGraph > > m_map_isotype_zeta_mc_corr
std::string m_ddVersion
bool m_apply_SC_leak_corr
bool m_apply_etaEDParPU_corr
bool m_apply_etaEDParPU_mc_corr
bool m_is_mc
bool m_AFII_corr
bool m_apply_dd {}
bool m_apply_ddDefault
bool m_correct_etcone
bool m_trouble_categories
bool m_useLogLogFit
bool m_fixCoreTime
bool m_forcePartType
CP::SystematicVariation m_systDDonoff
MetaStore_t m_inputMetaStore
 Object accessing the input metadata store.
MetaStore_t m_outputMetaStore
 Object accessing the output metadata store.
bool m_beginInputFileCalled
 Flag helping to discover when the tool misses the opening of the first input file.
bool m_useIncidents
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default)
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
bool m_varHandleArraysDeclared

Static Private Attributes

static const unsigned int m_Run2Run3runNumberTransition = 400000

Detailed Description

Definition at line 24 of file IsolationCorrectionTool.h.

Member Typedef Documentation

◆ MetaStore_t

Type of the metadata store object in Athena.

Definition at line 66 of file AsgMetadataTool.h.

◆ MetaStorePtr_t

Type of the metadata store pointer in standalone mode.

Definition at line 68 of file AsgMetadataTool.h.

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< AlgTool > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Member Function Documentation

◆ affectingSystematics()

CP::SystematicSet CP::IsolationCorrectionTool::affectingSystematics ( ) const
finaloverrideprivatevirtual

the list of all systematics this tool can be affected by

Implements CP::IIsolationCorrectionTool.

Definition at line 385 of file IsolationCorrectionTool.cxx.

385 {
386 CP::SystematicSet result;
387 return result;
388 }

◆ applyCorrection()

CP::CorrectionCode CP::IsolationCorrectionTool::applyCorrection ( xAOD::Egamma & eg)
finaloverrideprivatevirtual

Implements CP::IIsolationCorrectionTool.

Definition at line 210 of file IsolationCorrectionTool.cxx.

210 {
211
212 static const SG::AuxElement::Accessor<float> decDDcor20("topoetcone20_DDcorr");
213 static const SG::AuxElement::Accessor<float> decDDcor40("topoetcone40_DDcorr");
214 static const SG::AuxElement::Accessor<float> decEadded_Lr2("Eadded_Lr2");
215 static const SG::AuxElement::Accessor<float> decEadded_Lr3("Eadded_Lr3");
216
217
218 float SCsub = 0;
220 float topoetconecoreConeEnergyCorrection = 0;
221 if(!eg.isolationCaloCorrection(topoetconecoreConeEnergyCorrection, xAOD::Iso::topoetcone, xAOD::Iso::coreCone, xAOD::Iso::coreEnergy)){
222 ATH_MSG_WARNING("Could not find SC based core");
223 }
224 float core57cells = 0.;
226 ATH_MSG_WARNING("Could not find core57cells to apply SC based core correction");
227 }
228 ATH_MSG_VERBOSE("Old core correction value: " << core57cells);
229 ATH_MSG_VERBOSE("SC based core correction value: " << topoetconecoreConeEnergyCorrection);
230 SCsub = - topoetconecoreConeEnergyCorrection + core57cells;
231 }
232
233 float centralDensity = 0.;
234 float forwardDensity = 0.;
236 SG::ReadHandle<xAOD::EventShape> shapeCentral (m_centralEventShapeKey);
237 SG::ReadHandle<xAOD::EventShape> shapeForward (m_forwardEventShapeKey);
238 const xAOD::EventShape* evtShapeCentral = shapeCentral.ptr();
239 const xAOD::EventShape* evtShapeForward = shapeForward.ptr();
240 centralDensity = evtShapeCentral->getDensity(xAOD::EventShape::Density);
241 forwardDensity = evtShapeForward->getDensity(xAOD::EventShape::Density);
242 }
243
244 static const std::vector<xAOD::Iso::IsolationType> topoisolation_types = {xAOD::Iso::topoetcone20,
247 for (auto type : topoisolation_types) {
248 float oldleak = 0.;
249 if (!eg.isolationCaloCorrection(oldleak, type, xAOD::Iso::ptCorrection)) {
250 ATH_MSG_DEBUG("leakage correction not stored for isolation type " << xAOD::Iso::toCString(type) << ". Nothing done");
251 continue;
252 }
253 float oldiso = 0;
254 bool gotIso = eg.isolationValue(oldiso,type);
255 if (!gotIso) continue;
256
257 // Use the Random Run Number from the Event Info to check which year's DD-Corrections to use
258 // If the RandomRunNo can't be obtained, then default to what is set by either the default choice or by the AuxData check
259 unsigned int theRunNumber = 0 ;
260 SG::ReadHandle<xAOD::EventInfo> evtInfo (m_eventInfoKey);
261 const xAOD::EventInfo* eventInfo = evtInfo.ptr();
262 if (eventInfo) {
263 static const SG::AuxElement::Accessor<unsigned int> randomrunnumber("RandomRunNumber");
264 if (randomrunnumber.isAvailable(*eventInfo)){
265 theRunNumber = randomrunnumber(*(eventInfo)) ;
266 }
267 } else{
268 ATH_MSG_WARNING("Could not retrieve EventInfo object");
269 }
270 if (theRunNumber >= 320000)
271 m_ddVersion = "2017" ; // RunNo found, and is in 2017 range
272 else if (theRunNumber > 0)
273 m_ddVersion = "2015_2016" ; // RunNo found, but less than 2017 range
274 // otherwise, stick with default (m_ddVersion is already assigned)
275
276 // Don't use DD Corrections for AFII if not rel21 ? (I do not know what was done for rel20.7 !!!)
277 if (m_tool_ver_str != "REL21" && m_AFII_corr) m_apply_dd = false;
278
279 float iso = oldiso;
280 float newleak = 0.;
282 ATH_MSG_VERBOSE("Iso before SC correction: " << iso);
283 iso += (SCsub + oldleak);
284 ATH_MSG_VERBOSE("Iso after SC correction: " << iso);
285 }
286 else {
287 newleak = this->GetPtCorrection(eg,type);
288 iso += (oldleak - newleak);
289 }
290 float ddcorr = 0;
291
292 // this correction is derived purly from data, but can also be applied to mc
294 float abseta = fabs(eg.caloCluster()->etaBE(2));
295 float densityOldCorrection = 0.;
296 if(abseta <= 1.5){
297 densityOldCorrection = centralDensity;
298 }
299 else{
300 densityOldCorrection = forwardDensity;
301 }
302 float dR = xAOD::Iso::coneSize(type);
303 static const float a_core = 5*7*0.025*TMath::Pi()/128;
304 float area = TMath::Pi()*dR*dR-a_core;
305 float oldpu_corr = densityOldCorrection*area;
306 float newpu_corr = m_map_isotype_zetaPU[type]->Eval(abseta)*centralDensity*area;
307 float pu_mc_corr = 0.;
309 pu_mc_corr += m_map_isotype_zeta_mc_corr[type]->Eval(abseta)*centralDensity*area;
310 }
311 iso = iso + oldpu_corr - newpu_corr + pu_mc_corr;
312 ATH_MSG_VERBOSE("Applying parametrized pileup correction to " << eg.type() << " with |eta|="<< abseta);
313 ATH_MSG_VERBOSE("Old parametrized pileup correction for "<<xAOD::Iso::toCString(type)<< ": "<<oldpu_corr);
314 ATH_MSG_VERBOSE("New parametrized pileup correction for "<<xAOD::Iso::toCString(type)<< ": "<<newpu_corr);
315 ATH_MSG_VERBOSE("Parametrized mc correction for "<<xAOD::Iso::toCString(type)<< ": "<<pu_mc_corr);
316 ATH_MSG_VERBOSE("Isolation after new correction for "<<xAOD::Iso::toCString(type)<< ": "<<iso);
317 ATH_MSG_VERBOSE("Isolation after old correction for "<<xAOD::Iso::toCString(type)<< ": "<<iso+newpu_corr-oldpu_corr-pu_mc_corr);
318 eg.setIsolationCaloCorrection(newpu_corr, type, xAOD::Iso::pileupCorrection);
319 }
321 float coshEta = std::cosh(eg.caloCluster()->etaBE(2)) ;
322 float outTimeCore = (decEadded_Lr2(eg) + decEadded_Lr3(eg))/coshEta ;
323 iso += outTimeCore ;
324 }
325 if (m_is_mc && m_apply_dd && type != xAOD::Iso::topoetcone30 && eg.type() == xAOD::Type::Photon) {
326 ddcorr = this->GetDDCorrection(eg,type);
327 if (type == xAOD::Iso::topoetcone20)
328 decDDcor20(eg) = ddcorr;
329 else if (type == xAOD::Iso::topoetcone40)
330 decDDcor40(eg) = ddcorr;
331 iso += ddcorr;
332 }
333 bool setIso = eg.setIsolationValue(iso,type);
334 setIso = (setIso && eg.setIsolationCaloCorrection(newleak-ddcorr,type,xAOD::Iso::ptCorrection));
335 ATH_MSG_VERBOSE("oldeak = " << oldleak << " ddcor = " << ddcorr << " leak param = " << newleak
336 << " stored correction " << eg.isolationCaloCorrection(type,xAOD::Iso::ptCorrection));
337
338 if (!setIso) {
339 ATH_MSG_WARNING("Can't correct leakage for " << xAOD::Iso::toCString(type));
341 }
342 }
344 }
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_WARNING(x)
#define ATH_MSG_DEBUG(x)
double area(double R)
@ Error
Some error happened during the object correction.
@ Ok
The correction was done successfully.
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
std::map< xAOD::Iso::IsolationType, std::unique_ptr< TGraph > > m_map_isotype_zeta_mc_corr
SG::ReadHandleKey< xAOD::EventShape > m_forwardEventShapeKey
virtual float GetPtCorrection(const xAOD::Egamma &, xAOD::Iso::IsolationType) const override final
static const unsigned int m_Run2Run3runNumberTransition
SG::ReadHandleKey< xAOD::EventShape > m_centralEventShapeKey
virtual float GetDDCorrection(const xAOD::Egamma &, xAOD::Iso::IsolationType) override final
std::map< xAOD::Iso::IsolationType, std::unique_ptr< TGraph > > m_map_isotype_zetaPU
SG::Accessor< T, ALLOC > Accessor
Definition AuxElement.h:572
uint32_t runNumber() const
The current event's run number.
bool getDensity(EventDensityID id, double &v) const
Get a density variable from the object.
@ Photon
The object is a photon.
Definition ObjectType.h:47
@ topoetcone20
Topo-cluster ET-sum.
@ topoetcone
Topo-cluster ET-sum.
static const char * toCString(IsolationConeSize conesize)
float coneSize(IsolationConeSize type)
convert Isolation Size into cone size
EventInfo_v1 EventInfo
Definition of the latest event info version.
EventShape_v1 EventShape
Definition of the current event format version.
Definition EventShape.h:16

◆ applySystematicVariation()

StatusCode CP::IsolationCorrectionTool::applySystematicVariation ( const CP::SystematicSet & systConfig)
finaloverrideprivatevirtual

effects: configure this tool for the given list of systematic variations.

any requested systematics that are not affecting this tool will be silently ignored (unless they cause other errors). failures: systematic unknown failures: requesting multiple variations on the same systematic (e.g. up & down) failures: requesting an unsupported variation on an otherwise supported systematic (e.g. a 2 sigma variation and the tool only supports 1 sigma variations) failures: unsupported combination of supported systematic failures: other tool specific errors

Implements CP::IIsolationCorrectionTool.

Definition at line 394 of file IsolationCorrectionTool.cxx.

394 {
395 return StatusCode::SUCCESS;
396 }

◆ beginEvent()

StatusCode asg::AsgMetadataTool::beginEvent ( )
protectedvirtualinherited

◆ beginInputFile()

StatusCode asg::AsgMetadataTool::beginInputFile ( )
protectedvirtualinherited

Function called when a new input file is opened.

Dummy implementation that can be overridden by the derived tool.

Reimplemented in AsgElectronEfficiencyCorrectionTool, BookkeeperDumperTool, BookkeeperTool, PMGTools::PMGTruthWeightTool, TauAnalysisTools::TauEfficiencyCorrectionsTool, TauAnalysisTools::TauSmearingTool, Trig::TrigDecisionTool, Trig::xAODBunchCrossingTool, TrigConf::xAODConfigTool, xAODMaker::TriggerMenuMetaDataTool, and xAODMaker::TruthMetaDataTool.

Definition at line 185 of file AsgMetadataTool.cxx.

185 {
186
187 // Return gracefully:
188 return StatusCode::SUCCESS;
189 }

◆ correctedCopy()

CP::CorrectionCode CP::IsolationCorrectionTool::correctedCopy ( const xAOD::Egamma & input,
xAOD::Egamma *& output )
finaloverrideprivatevirtual

Implements CP::IIsolationCorrectionTool.

Definition at line 358 of file IsolationCorrectionTool.cxx.

358 {
359 // A sanity check:
360 if( output ) ATH_MSG_WARNING( "Non-null pointer received. There's a possible memory leak!" );
361
362 if ( input.type() == xAOD::Type::Electron ) {
363 output = new xAOD::Electron();
364 output->makePrivateStore( static_cast<const xAOD::Electron&>(input) );
365 return applyCorrection( *output );
366 }
367 else if ( input.type() == xAOD::Type::Photon ) {
368 output = new xAOD::Photon();
369 output->makePrivateStore( static_cast<const xAOD::Photon&>(input) );
370 return applyCorrection( *output );
371 }
372 else {
373 ATH_MSG_WARNING("Didn't get an electron or photon");
375 }
376
377 }
virtual CP::CorrectionCode applyCorrection(xAOD::Egamma &) override final
output
Definition merge.py:16
@ Electron
The object is an electron.
Definition ObjectType.h:46
Photon_v1 Photon
Definition of the current "egamma version".
Electron_v1 Electron
Definition of the current "egamma version".

◆ CorrectLeakage()

CP::CorrectionCode CP::IsolationCorrectionTool::CorrectLeakage ( xAOD::Egamma & eg)
finaloverrideprivatevirtual

Implements CP::IIsolationCorrectionTool.

Definition at line 168 of file IsolationCorrectionTool.cxx.

168 {
169
170 static const std::vector<xAOD::Iso::IsolationType> topoisolation_types = {xAOD::Iso::topoetcone20,
172
173 for (auto type : topoisolation_types) {
174 float oldleak = 0.;
175 if (eg.isolationCaloCorrection(oldleak, type, xAOD::Iso::ptCorrection)) {
176 ATH_MSG_DEBUG("leakage correction not stored for isolation type " << xAOD::Iso::toCString(type) << ". Nothing done.");
177 continue;
178 }
179 float newleak = this->GetPtCorrection(eg,type);
180 float iso = 0;
181 if (!eg.isolationValue(iso,type)) {
182 ATH_MSG_WARNING("Isolation variable " << xAOD::Iso::toCString(type) << " not stored. Nothing done.");
183 continue;
184 }
185 iso += (oldleak-newleak);
186 bool setIso = eg.setIsolationValue(iso,type);
187 setIso = (setIso && eg.setIsolationCaloCorrection(newleak,type,xAOD::Iso::ptCorrection));
188 if (!setIso) {
189 ATH_MSG_WARNING("Can't correct leakage for " << xAOD::Iso::toCString(type));
191 }
192 }
193
194 if (m_correct_etcone){
195 // this is supposed to correct an uncorrected etcone
196 static const std::vector<xAOD::Iso::IsolationType> isolation_types = {xAOD::Iso::etcone20,
199
200 ATH_MSG_VERBOSE( "Correcting etconeXX isolation..." );
201 for(auto type : topoisolation_types){
202 float Etcone_value_corr = m_isol_corr->GetPtCorrectedIsolation(eg,type);
203 eg.setIsolationValue(Etcone_value_corr,type);
204 }
205 }
206
208 }
@ etcone20
Calorimeter isolation.

◆ declareGaudiProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > & hndl,
const SG::VarHandleKeyType &  )
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158 {
160 hndl.value(),
161 hndl.documentation());
162
163 }
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)

◆ declareProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( Gaudi::Property< T, V, H > & t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145 {
146 typedef typename SG::HandleClassifier<T>::type htype;
148 }
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>

◆ detStore()

const ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

◆ endInputFile()

StatusCode asg::AsgMetadataTool::endInputFile ( )
protectedvirtualinherited

Function called when the currently open input file got completely processed.

Dummy implementation that can be overridden by the derived tool.

Reimplemented in BookkeeperDumperTool, BookkeeperTool, xAODMaker::TriggerMenuMetaDataTool, and xAODMaker::TruthMetaDataTool.

Definition at line 193 of file AsgMetadataTool.cxx.

193 {
194
195 // Return gracefully:
196 return StatusCode::SUCCESS;
197 }

◆ evtStore()

ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase & ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ GetDDCorrection()

float CP::IsolationCorrectionTool::GetDDCorrection ( const xAOD::Egamma & input,
xAOD::Iso::IsolationType isol )
finaloverrideprivatevirtual

Implements CP::IIsolationCorrectionTool.

Definition at line 354 of file IsolationCorrectionTool.cxx.

354 {
355 return m_isol_corr->GetDDCorrection(input, isol, m_ddVersion);
356 }

◆ GetEtaPointing()

float CP::IsolationCorrectionTool::GetEtaPointing ( const xAOD::Egamma * input)
inlineprivate

Definition at line 71 of file IsolationCorrectionTool.h.

72 {
73 return m_isol_corr->GetEtaPointing(input);
74 };

◆ getKey()

SG::sgkey_t asg::AsgTool::getKey ( const void * ptr) const
inherited

Get the (hashed) key of an object that is in the event store.

This is a bit of a special one. StoreGateSvc and xAOD::TEvent both provide ways for getting the SG::sgkey_t key for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.

In order to allow tools to efficiently perform this operation, they can use this helper function.

See also
asg::AsgTool::getName
Parameters
ptrThe bare pointer to the object that the event store should know about
Returns
The hashed key of the object in the store. If not found, an invalid (zero) key.

Definition at line 119 of file AsgTool.cxx.

119 {
120
121#ifdef XAOD_STANDALONE
122 // In case we use @c xAOD::TEvent, we have a direct function call
123 // for this.
124 return evtStore()->event()->getKey( ptr );
125#else
126 const SG::DataProxy* proxy = evtStore()->proxy( ptr );
127 return ( proxy == nullptr ? 0 : proxy->sgkey() );
128#endif // XAOD_STANDALONE
129 }
ServiceHandle< StoreGateSvc > & evtStore()

◆ getName()

const std::string & asg::AsgTool::getName ( const void * ptr) const
inherited

Get the name of an object that is / should be in the event store.

This is a bit of a special one. StoreGateSvc and xAOD::TEvent both provide ways for getting the std::string name for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.

In order to allow tools to efficiently perform this operation, they can use this helper function.

See also
asg::AsgTool::getKey
Parameters
ptrThe bare pointer to the object that the event store should know about
Returns
The string name of the object in the store. If not found, an empty string.

Definition at line 106 of file AsgTool.cxx.

106 {
107
108#ifdef XAOD_STANDALONE
109 // In case we use @c xAOD::TEvent, we have a direct function call
110 // for this.
111 return evtStore()->event()->getName( ptr );
112#else
113 const SG::DataProxy* proxy = evtStore()->proxy( ptr );
114 static const std::string dummy = "";
115 return ( proxy == nullptr ? dummy : proxy->name() );
116#endif // XAOD_STANDALONE
117 }

◆ getProperty()

template<class T>
const T * asg::AsgTool::getProperty ( const std::string & name) const
inherited

Get one of the tool's properties.

◆ GetPtCorrectedIsolation()

float CP::IsolationCorrectionTool::GetPtCorrectedIsolation ( const xAOD::Egamma & input,
xAOD::Iso::IsolationType isol )
overrideprivatevirtual

Implements CP::IIsolationCorrectionTool.

Definition at line 346 of file IsolationCorrectionTool.cxx.

346 {
347 return m_isol_corr->GetPtCorrectedIsolation(input, isol);
348 }

◆ GetPtCorrection()

float CP::IsolationCorrectionTool::GetPtCorrection ( const xAOD::Egamma & input,
xAOD::Iso::IsolationType isol ) const
finaloverrideprivatevirtual

Implements CP::IIsolationCorrectionTool.

Definition at line 350 of file IsolationCorrectionTool.cxx.

350 {
351 return m_isol_corr->GetPtCorrection(input, isol);
352 }

◆ handle()

void asg::AsgMetadataTool::handle ( const Incident & inc)
protectedvirtualinherited

Function receiving incidents from IncidentSvc/TEvent.

Reimplemented in Trig::TrigDecisionTool.

Definition at line 135 of file AsgMetadataTool.cxx.

135 {
136
137 // Tell the user what's happening:
138 ATH_MSG_VERBOSE( "Callback received with incident: " << inc.type() );
139
140 // Call the appropriate member function:
141 if( inc.type() == IncidentType::BeginInputFile ) {
143 if( beginInputFile().isFailure() ) {
144 ATH_MSG_FATAL( "Failed to call beginInputFile()" );
145 throw std::runtime_error( "Couldn't call beginInputFile()" );
146 }
147 } else if( inc.type() == IncidentType::EndInputFile ) {
148 if( endInputFile().isFailure() ) {
149 ATH_MSG_FATAL( "Failed to call endInputFile()" );
150 throw std::runtime_error( "Couldn't call endInputFile()" );
151 }
152 } else if( inc.type() == IncidentType::BeginEvent ) {
153 // If the tool didn't catch the begin input file incident for the
154 // first input file of the job, then call the appropriate function
155 // now.
156 if( ! m_beginInputFileCalled ) {
158 if( beginInputFile().isFailure() ) {
159 ATH_MSG_FATAL( "Failed to call beginInputFile()" );
160 throw std::runtime_error( "Couldn't call beginInputFile()" );
161 }
162 }
163 if( beginEvent().isFailure() ) {
164 ATH_MSG_FATAL( "Failed to call beginEvent()" );
165 throw std::runtime_error( "Couldn't call beginEvent()" );
166 }
167
168 #ifdef XAOD_STANDALONE
169 } else if( inc.type() == IncidentType::MetaDataStop ) {
170 if( metaDataStop().isFailure() ) {
171 ATH_MSG_FATAL( "Failed to call metaDataStop()" );
172 throw std::runtime_error( "Couldn't call metaDataStop()" );
173 }
174
175 #endif // XAOD_STANDALONE
176 } else {
177 ATH_MSG_WARNING( "Unknown incident type received in AsgMetaDataTool: " << inc.type() );
178 }
179
180 return;
181 }
#define ATH_MSG_FATAL(x)
virtual StatusCode beginInputFile()
Function called when a new input file is opened.
virtual StatusCode beginEvent()
Function called when a new events is loaded.
bool m_beginInputFileCalled
Flag helping to discover when the tool misses the opening of the first input file.
virtual StatusCode endInputFile()
Function called when the currently open input file got completely processed.
virtual StatusCode metaDataStop()
Function called when the tool should write out its metadata.

◆ initialize()

StatusCode CP::IsolationCorrectionTool::initialize ( void )
finaloverrideprivatevirtual

Implements CP::IIsolationCorrectionTool.

Definition at line 47 of file IsolationCorrectionTool.cxx.

47 {
48 ATH_MSG_INFO( "in initialize of " << name() << "..." );
49
50 //ReadHandles
51 ATH_CHECK(m_eventInfoKey.initialize());
54
55 //
56 m_isol_corr->msg().setLevel(this->msg().level());
57 //
58 // Resolve the paths to the input files
59 std::vector < std::string > corrFileNameList;
60 corrFileNameList.push_back(m_corr_file);
61 corrFileNameList.push_back(m_corr_ddshift_file);
62 corrFileNameList.push_back(m_corr_ddsmearing_file);
63
64 for ( unsigned int i=0; i<corrFileNameList.size(); ++i ){
65
66 //First try the PathResolver
67 std::string filename = PathResolverFindCalibFile( corrFileNameList.at(i) );
68 if (filename.empty()){
69 ATH_MSG_ERROR ( "Could NOT resolve file name " << corrFileNameList.at(i) );
70 return StatusCode::FAILURE ;
71 } else{
72 ATH_MSG_INFO(" Path found = "<<filename);
73 }
74 corrFileNameList.at(i) = filename;
75 }
76 //
77
79
80 if (m_tool_ver_str == "REL22") tool_ver = CP::IsolationCorrection::REL22;
81 else if (m_tool_ver_str == "REL21") tool_ver = CP::IsolationCorrection::REL21;
82 else if (m_tool_ver_str == "REL20_2") tool_ver = CP::IsolationCorrection::REL20_2;
83 else if (m_tool_ver_str == "REL17_2") tool_ver = CP::IsolationCorrection::REL17_2;
84 else {
85 ATH_MSG_WARNING("Tool version not recognized: "<<m_tool_ver_str<<"\nAllowed versions: REL22, REL21, REL20_2, REL17_2");
86 return StatusCode::FAILURE;
87 }
88
89 if(TString(corrFileNameList[0]).Contains("isolation_ptcorrections_rel17_2.root") && m_tool_ver_str != "REL17_2"){
90 ATH_MSG_WARNING("The specified correction file is not for "<<m_tool_ver_str<<" please use proper correction file");
91 return StatusCode::FAILURE;
92 }
93
94 if (TString(corrFileNameList[0]).Contains("isolation_ptcorrections_rel20_2.root") && !( m_tool_ver_str == "REL20_2" || m_tool_ver_str == "REL21" ) ){
95 ATH_MSG_WARNING("The specified correction file is not for "<<m_tool_ver_str<<" please use proper correction file");
96 return StatusCode::FAILURE;
97 }
98 if (TString(corrFileNameList[0]).Contains("isolation_ptcorrections_rel22_") && m_tool_ver_str != "REL22" ){
99 ATH_MSG_WARNING("The specified correction file is not for "<<m_tool_ver_str<<" please use proper correction file");
100 return StatusCode::FAILURE;
101 }
102
104 m_isol_corr->SetToolVer(tool_ver);
105 m_isol_corr->SetTroubleCategories(m_trouble_categories);
106 m_isol_corr->FitType(m_useLogLogFit);
107 m_isol_corr->ForcePartType(m_forcePartType);
108
109 // Note that systematics in Rel 21 are NOT done with the DD-Corr ON/OFF method!
110 if (m_apply_ddDefault) {
111 if (m_ddVersion == "2015" || m_ddVersion == "2015_2016" || m_ddVersion == "2017") {
112 //if not REL21, register ourselves with the systematic registry!
113 if (m_tool_ver_str!="REL21") {
114 CP::SystematicRegistry& registry = CP::SystematicRegistry::getInstance();
115 if( registry.registerSystematics( *this ) != StatusCode::SUCCESS ) return StatusCode::FAILURE;
116 }
117 m_apply_dd = true;
118 } else {
119 ATH_MSG_WARNING("Unknown data driven correction");
120 m_apply_dd = false;
121 }
122 } else{
123 m_apply_dd = false;
124 }
125
126 // Don't use DD Corrections for AFII if not rel21 (I do not know what was done in rel20.7 !)
127 if (m_tool_ver_str != "REL21" && m_AFII_corr) m_apply_dd = false;
128
129 m_isol_corr->SetAFII(m_AFII_corr);
130 m_isol_corr->SetDataMC(m_is_mc);
131
134 if (filename.empty()){
135 ATH_MSG_ERROR ( "Could NOT resolve file name " << m_corr_etaEDParPU_file );
136 return StatusCode::FAILURE ;
137 }
138 ATH_MSG_INFO(" Path found = "<<filename);
139 std::unique_ptr<TFile> f(TFile::Open(filename.c_str(), "READ"));
140
141 m_map_isotype_zetaPU[xAOD::Iso::topoetcone20] = std::unique_ptr<TGraph>((TGraph*)f->Get("topoetcone20"));
142 m_map_isotype_zetaPU[xAOD::Iso::topoetcone30] = std::unique_ptr<TGraph>((TGraph*)f->Get("topoetcone30"));
143 m_map_isotype_zetaPU[xAOD::Iso::topoetcone40] = std::unique_ptr<TGraph>((TGraph*)f->Get("topoetcone40"));
144 f->Close();
145
148 if (filename.empty()){
149 ATH_MSG_ERROR ( "Could NOT resolve file name " << m_corr_etaEDPar_mc_corr_file );
150 return StatusCode::FAILURE ;
151 }
152 ATH_MSG_INFO(" Path found = "<<filename);
153 std::unique_ptr<TFile> f_corr(TFile::Open(filename.c_str(), "READ"));
154
155 m_map_isotype_zeta_mc_corr[xAOD::Iso::topoetcone20] = std::unique_ptr<TGraph>((TGraph*)f_corr->Get("topoetcone20"));
156 m_map_isotype_zeta_mc_corr[xAOD::Iso::topoetcone30] = std::unique_ptr<TGraph>((TGraph*)f_corr->Get("topoetcone30"));
157 m_map_isotype_zeta_mc_corr[xAOD::Iso::topoetcone40] = std::unique_ptr<TGraph>((TGraph*)f_corr->Get("topoetcone40"));
158 f_corr->Close();
159 }
160 }
161
162 return m_isol_corr->initialize();
163 }
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_ERROR(x)
#define ATH_MSG_INFO(x)
std::string PathResolverFindCalibFile(const std::string &logical_file_name)
static SystematicRegistry & getInstance()
Get the singleton instance of the registry for the curren thread.
StatusCode registerSystematics(const IReentrantSystematicsTool &tool)
effects: register all the systematics from the tool
MsgStream & msg
Definition testRead.cxx:32

◆ inputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ inputMetaStore()

AsgMetadataTool::MetaStorePtr_t asg::AsgMetadataTool::inputMetaStore ( ) const
inherited

Accessor for the input metadata store.

Definition at line 93 of file AsgMetadataTool.cxx.

93 {
94
95#ifdef XAOD_STANDALONE
96 return &m_inputMetaStore;
97#else // XAOD_STANDALONE
98 return m_inputMetaStore;
99#endif // XAOD_STANDALONE
100 }
MetaStore_t m_inputMetaStore
Object accessing the input metadata store.

◆ isAffectedBySystematic()

bool CP::IsolationCorrectionTool::isAffectedBySystematic ( const CP::SystematicVariation & systematic) const
finaloverrideprivatevirtual

Declare the interface that this class provides.

returns: whether this tool is affected by the given systematics

Implements CP::IIsolationCorrectionTool.

Definition at line 380 of file IsolationCorrectionTool.cxx.

380 {
381 CP::SystematicSet sys = affectingSystematics();
382 return sys.find( systematic ) != sys.end();
383 }
virtual CP::SystematicSet affectingSystematics() const override final
the list of all systematics this tool can be affected by

◆ metaDataStop()

StatusCode asg::AsgMetadataTool::metaDataStop ( )
protectedvirtualinherited

Function called when the tool should write out its metadata.

Dummy implementation that can be overridden by the derived tool.

Reimplemented in BookkeeperDumperTool, BookkeeperTool, xAODMaker::TriggerMenuMetaDataTool, and xAODMaker::TruthMetaDataTool.

Definition at line 209 of file AsgMetadataTool.cxx.

209 {
210
211 // Return gracefully:
212 return StatusCode::SUCCESS;
213 }

◆ msg()

MsgStream & AthCommonMsg< AlgTool >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24 {
25 return this->msgStream();
26 }

◆ msg_level_name()

const std::string & asg::AsgTool::msg_level_name ( ) const
inherited

A deprecated function for getting the message level's name.

Instead of using this, weirdly named function, user code should get the string name of the current minimum message level (in case they really need it...), with:

MSG::name( msg().level() )

This function's name doesn't follow the ATLAS coding rules, and as such will be removed in the not too distant future.

Returns
The string name of the current minimum message level that's printed

Definition at line 101 of file AsgTool.cxx.

101 {
102
103 return MSG::name( msg().level() );
104 }
MsgStream & msg() const
const std::string & name(Level lvl)
Convenience function for translating message levels to strings.
Definition MsgLevel.cxx:19

◆ msgLvl()

bool AthCommonMsg< AlgTool >::msgLvl ( const MSG::Level lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30 {
31 return this->msgLevel(lvl);
32 }

◆ outputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ outputMetaStore()

AsgMetadataTool::MetaStorePtr_t asg::AsgMetadataTool::outputMetaStore ( ) const
inherited

Accessor for the output metadata store.

Definition at line 102 of file AsgMetadataTool.cxx.

102 {
103
104#ifdef XAOD_STANDALONE
105 return &m_outputMetaStore;
106#else // XAOD_STANDALONE
107 return m_outputMetaStore;
108#endif // XAOD_STANDALONE
109 }
MetaStore_t m_outputMetaStore
Object accessing the output metadata store.

◆ Print()

void CP::IsolationCorrectionTool::Print ( )
inlineprivate

Definition at line 68 of file IsolationCorrectionTool.h.

68{ m_isol_corr->Print(); };

◆ print()

◆ recommendedSystematics()

CP::SystematicSet CP::IsolationCorrectionTool::recommendedSystematics ( ) const
finaloverrideprivatevirtual

the list of all systematics this tool recommends to use

Implements CP::IIsolationCorrectionTool.

Definition at line 390 of file IsolationCorrectionTool.cxx.

390 {
391 return affectingSystematics();
392 }

◆ renounce()

std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > AthCommonDataStore< AthCommonMsg< AlgTool > >::renounce ( T & h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381 {
382 h.renounce();
384 }
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::renounceArray ( SG::VarHandleKeyArray & handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364 {
366 }

◆ setUseIncidents()

void asg::AsgMetadataTool::setUseIncidents ( const bool flag)
inlineprotectedinherited

Definition at line 132 of file AsgMetadataTool.h.

133 {
135 }
bool flag
Definition master.py:29

◆ sysInitialize()

StatusCode asg::AsgMetadataTool::sysInitialize ( )
virtualinherited

Function initialising the tool in the correct way in Athena.

This function is used to set up the callbacks from IncidentSvc in Athena at the right time during initialisation, without the user having to do anything special in his/her code.

Reimplemented from AthCommonDataStore< AthCommonMsg< AlgTool > >.

Definition at line 115 of file AsgMetadataTool.cxx.

115 {
116
117#ifndef XAOD_STANDALONE
118 if (m_useIncidents) {
119 // Connect to the IncidentSvc:
120 ServiceHandle< IIncidentSvc > incSvc( "IncidentSvc", name() );
121 ATH_CHECK( incSvc.retrieve() );
122
123 // Set up the right callbacks: don't rethrow exceptions, any failure and we should end
124 incSvc->addListener( this, IncidentType::BeginEvent, 0, false );
125 }
126 // Let the base class do its thing:
127 ATH_CHECK( AlgTool::sysInitialize() );
128
129#endif // not XAOD_STANDALONE
130
131 // Return gracefully:
132 return StatusCode::SUCCESS;
133 }

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::updateVHKA ( Gaudi::Details::PropertyBase & )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308 {
309 // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310 // << " size: " << m_vhka.size() << endmsg;
311 for (auto &a : m_vhka) {
313 for (auto k : keys) {
314 k->setOwner(this);
315 }
316 }
317 }
std::vector< SG::VarHandleKeyArray * > m_vhka

◆ ~IsolationCorrectionTool()

CP::IsolationCorrectionTool::~IsolationCorrectionTool ( )
privatevirtual

Definition at line 398 of file IsolationCorrectionTool.cxx.

398 {
399 delete m_isol_corr;
400 }

Member Data Documentation

◆ m_AFII_corr

bool CP::IsolationCorrectionTool::m_AFII_corr
private

Definition at line 111 of file IsolationCorrectionTool.h.

◆ m_apply_dd

bool CP::IsolationCorrectionTool::m_apply_dd {}
private

Definition at line 112 of file IsolationCorrectionTool.h.

◆ m_apply_ddDefault

bool CP::IsolationCorrectionTool::m_apply_ddDefault
private

Definition at line 112 of file IsolationCorrectionTool.h.

◆ m_apply_etaEDParPU_corr

bool CP::IsolationCorrectionTool::m_apply_etaEDParPU_corr
private

Definition at line 108 of file IsolationCorrectionTool.h.

◆ m_apply_etaEDParPU_mc_corr

bool CP::IsolationCorrectionTool::m_apply_etaEDParPU_mc_corr
private

Definition at line 109 of file IsolationCorrectionTool.h.

◆ m_apply_SC_leak_corr

bool CP::IsolationCorrectionTool::m_apply_SC_leak_corr
private

Definition at line 107 of file IsolationCorrectionTool.h.

◆ m_beginInputFileCalled

bool asg::AsgMetadataTool::m_beginInputFileCalled
privateinherited

Flag helping to discover when the tool misses the opening of the first input file.

Definition at line 126 of file AsgMetadataTool.h.

◆ m_centralEventShapeKey

SG::ReadHandleKey<xAOD::EventShape> CP::IsolationCorrectionTool::m_centralEventShapeKey
private
Initial value:
{
this,
"CentralEventShapeKey",
"TopoClusterIsoCentralEventShape",
""
}

Definition at line 80 of file IsolationCorrectionTool.h.

80 {
81 this,
82 "CentralEventShapeKey",
83 "TopoClusterIsoCentralEventShape",
84 ""
85 };

◆ m_corr_ddshift_file

std::string CP::IsolationCorrectionTool::m_corr_ddshift_file
private

Definition at line 95 of file IsolationCorrectionTool.h.

◆ m_corr_ddsmearing_file

std::string CP::IsolationCorrectionTool::m_corr_ddsmearing_file
private

Definition at line 96 of file IsolationCorrectionTool.h.

◆ m_corr_etaEDPar_mc_corr_file

std::string CP::IsolationCorrectionTool::m_corr_etaEDPar_mc_corr_file
private

Definition at line 101 of file IsolationCorrectionTool.h.

◆ m_corr_etaEDParPU_file

std::string CP::IsolationCorrectionTool::m_corr_etaEDParPU_file
private

Definition at line 100 of file IsolationCorrectionTool.h.

◆ m_corr_file

std::string CP::IsolationCorrectionTool::m_corr_file
private

Definition at line 94 of file IsolationCorrectionTool.h.

◆ m_correct_etcone

bool CP::IsolationCorrectionTool::m_correct_etcone
private

Definition at line 113 of file IsolationCorrectionTool.h.

◆ m_ddVersion

std::string CP::IsolationCorrectionTool::m_ddVersion
private

Definition at line 106 of file IsolationCorrectionTool.h.

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_eventInfoKey

SG::ReadHandleKey<xAOD::EventInfo> CP::IsolationCorrectionTool::m_eventInfoKey
private
Initial value:
{ this,
"EventInfoKey",
"EventInfo",
"" }

Definition at line 76 of file IsolationCorrectionTool.h.

76 { this,
77 "EventInfoKey",
78 "EventInfo",
79 "" };

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_fixCoreTime

bool CP::IsolationCorrectionTool::m_fixCoreTime
private

Definition at line 116 of file IsolationCorrectionTool.h.

◆ m_forcePartType

bool CP::IsolationCorrectionTool::m_forcePartType
private

Definition at line 117 of file IsolationCorrectionTool.h.

◆ m_forwardEventShapeKey

SG::ReadHandleKey<xAOD::EventShape> CP::IsolationCorrectionTool::m_forwardEventShapeKey
private
Initial value:
{
this,
"ForwardEventShape",
"TopoClusterIsoForwardEventShape",
""
}

Definition at line 87 of file IsolationCorrectionTool.h.

87 {
88 this,
89 "ForwardEventShape",
90 "TopoClusterIsoForwardEventShape",
91 ""
92 };

◆ m_inputMetaStore

MetaStore_t asg::AsgMetadataTool::m_inputMetaStore
privateinherited

Object accessing the input metadata store.

Definition at line 119 of file AsgMetadataTool.h.

◆ m_is_mc

bool CP::IsolationCorrectionTool::m_is_mc
private

Definition at line 110 of file IsolationCorrectionTool.h.

◆ m_isol_corr

IsolationCorrection* CP::IsolationCorrectionTool::m_isol_corr
private

Definition at line 97 of file IsolationCorrectionTool.h.

◆ m_map_isotype_zeta_mc_corr

std::map<xAOD::Iso::IsolationType, std::unique_ptr<TGraph> > CP::IsolationCorrectionTool::m_map_isotype_zeta_mc_corr
private

Definition at line 105 of file IsolationCorrectionTool.h.

◆ m_map_isotype_zetaPU

std::map<xAOD::Iso::IsolationType, std::unique_ptr<TGraph> > CP::IsolationCorrectionTool::m_map_isotype_zetaPU
private

Definition at line 103 of file IsolationCorrectionTool.h.

◆ m_outputMetaStore

MetaStore_t asg::AsgMetadataTool::m_outputMetaStore
privateinherited

Object accessing the output metadata store.

Definition at line 121 of file AsgMetadataTool.h.

◆ m_Run2Run3runNumberTransition

const unsigned int CP::IsolationCorrectionTool::m_Run2Run3runNumberTransition = 400000
staticprivate

Definition at line 119 of file IsolationCorrectionTool.h.

◆ m_systDDonoff

CP::SystematicVariation CP::IsolationCorrectionTool::m_systDDonoff
private

Definition at line 121 of file IsolationCorrectionTool.h.

◆ m_tool_ver_str

std::string CP::IsolationCorrectionTool::m_tool_ver_str
private

Definition at line 98 of file IsolationCorrectionTool.h.

◆ m_trouble_categories

bool CP::IsolationCorrectionTool::m_trouble_categories
private

Definition at line 114 of file IsolationCorrectionTool.h.

◆ m_useIncidents

bool asg::AsgMetadataTool::m_useIncidents
privateinherited

Definition at line 128 of file AsgMetadataTool.h.

◆ m_useLogLogFit

bool CP::IsolationCorrectionTool::m_useLogLogFit
private

Definition at line 115 of file IsolationCorrectionTool.h.

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< AlgTool > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.


The documentation for this class was generated from the following files: