![]() |
ATLAS Offline Software
|
#include <AsgPhotonEfficiencyCorrectionTool.h>
Classes | |
| struct | Accessors |
Public Member Functions | |
| AsgPhotonEfficiencyCorrectionTool (const std::string &myname) | |
| Standard constructor. | |
| virtual | ~AsgPhotonEfficiencyCorrectionTool () |
| Standard destructor. | |
| virtual StatusCode | initialize () override |
| Gaudi Service Interface method implementations. | |
| virtual CP::CorrectionCode | getEfficiencyScaleFactor (const xAOD::Egamma &inputObject, double &efficiencyScaleFactor) const override |
| Add some method for now as a first step to move the tool to then new interface. | |
| CP::CorrectionCode | getEfficiencyScaleFactor (columnar::EgammaId inputObject, columnar::EventInfoId eventInfo, double &efficiencyScaleFactor) const |
| virtual CP::CorrectionCode | getEfficiencyScaleFactorError (const xAOD::Egamma &inputObject, double &efficiencyScaleFactorError) const override |
| Get the "photon scale factor error" as a return value. | |
| CP::CorrectionCode | getEfficiencyScaleFactorError (columnar::EgammaId inputObject, columnar::EventInfoId eventInfo, double &efficiencyScaleFactorError) const |
| virtual CP::CorrectionCode | applyEfficiencyScaleFactor (xAOD::Egamma &inputObject) const override |
| Decorate the photon with its scale factor. | |
| virtual bool | isAffectedBySystematic (const CP::SystematicVariation &systematic) const override |
| The methods below should notify the user of what is actually in the list , without him having to go in the wiki. | |
| virtual CP::SystematicSet | affectingSystematics () const override |
| returns: the list of all systematics this tool can be affected by | |
| virtual CP::SystematicSet | recommendedSystematics () const override |
| returns: the list of all systematics this tool recommends to use | |
| const CP::SystematicSet & | appliedSystematics () const |
| returns: the currently applied systematics | |
| virtual StatusCode | applySystematicVariation (const CP::SystematicSet &systConfig) override |
| Configure this tool for the given systematics. | |
| StatusCode | registerSystematics () |
| Register the systematics with the registry and add them to the recommended list. | |
| void | callSingleEvent (columnar::EgammaRange photons, columnar::EventInfoId event) const |
| void | callEvents (columnar::EventContextRange events) const override |
| 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 | sysInitialize () override |
| Perform system initialization for an algorithm. | |
| 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 |
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. | |
Private Types | |
| typedef Root::TElectronEfficiencyCorrectionTool::Result | Result |
| typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
Private Member Functions | |
| CP::CorrectionCode | calculate (columnar::EgammaId egam, columnar::EventInfoId eventInfo, Result &result) const |
| I think these calculate methods are only used internally. | |
| std::string | getFileName (const std::string &isoWP, const std::string &trigWP, bool isConv) |
| Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> | |
Private Attributes | |
| Root::TElectronEfficiencyCorrectionTool * | m_rootTool_unc |
| Pointer to the underlying ROOT based tool. | |
| Root::TElectronEfficiencyCorrectionTool * | m_rootTool_con |
| std::unordered_map< CP::SystematicSet, CP::SystematicSet > | m_systFilter |
| Systematics filter map. | |
| CP::SystematicSet * | m_appliedSystematics = nullptr |
| Currently applied systematics. | |
| std::string | m_sysSubstring |
| std::string | m_file_prefix_ID ="efficiencySF.offline." |
| std::string | m_file_prefix_ISO ="efficiencySF.Isolation." |
| std::string | m_file_prefix_Trig ="efficiencySF." |
| std::string | m_file_prefix_TrigEff ="efficiency." |
| std::string | m_corrFileNameConv |
| The list of input file names. | |
| std::string | m_corrFileNameUnconv |
| std::string | m_resultPrefix |
| The prefix string for the result. | |
| std::string | m_resultName |
| The string for the result. | |
| int | m_dataTypeOverwrite |
| Force the data type to a given value. | |
| std::string | m_isoWP |
| Isolation working point. | |
| std::string | m_trigger |
| Trigger name for trigger SF. | |
| std::string | m_mapFile |
| map filename | |
| std::map< float, std::vector< float > > | m_pteta_bins |
| bool | m_useRandomRunNumber |
| int | m_defaultRandomRunNumber |
| bool | m_removeTRTConversion |
| Gaudi::Property< bool > | m_allowMissingLinks { this, "AllowMissingLinks", false, "Allow missing links in the input objects. This should only be used by experts running on expert formats." } |
| std::unique_ptr< Accessors > | m_accessors {std::make_unique<Accessors>(*this)} |
| 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 |
Definition at line 41 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Definition at line 92 of file AsgPhotonEfficiencyCorrectionTool.h.
|
privateinherited |
Definition at line 388 of file AthCommonDataStore.h.
| AsgPhotonEfficiencyCorrectionTool::AsgPhotonEfficiencyCorrectionTool | ( | const std::string & | myname | ) |
Standard constructor.
Definition at line 42 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
virtual |
|
overridevirtual |
returns: the list of all systematics this tool can be affected by
returns: the list of all systematics this tool can be affected by (for now keep +-1 sigma variation, but ignore it later in applySystematicVariation() )
Implements CP::IReentrantSystematicsTool.
Definition at line 378 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
inline |
returns: the currently applied systematics
Definition at line 80 of file AsgPhotonEfficiencyCorrectionTool.h.
|
overridevirtual |
Decorate the photon with its scale factor.
Implements IAsgPhotonEfficiencyCorrectionTool.
Definition at line 356 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
overridevirtual |
Configure this tool for the given systematics.
Implements CP::ISystematicsTool.
Definition at line 408 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
private |
I think these calculate methods are only used internally.
Definition at line 181 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
override |
Definition at line 502 of file AsgPhotonEfficiencyCorrectionTool.cxx.
| void AsgPhotonEfficiencyCorrectionTool::callSingleEvent | ( | columnar::EgammaRange | photons, |
| columnar::EventInfoId | event ) const |
Definition at line 479 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
|
inlineinherited |
Definition at line 145 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 95 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 85 of file AthCommonDataStore.h.
|
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
| CP::CorrectionCode AsgPhotonEfficiencyCorrectionTool::getEfficiencyScaleFactor | ( | columnar::EgammaId | inputObject, |
| columnar::EventInfoId | eventInfo, | ||
| double & | efficiencyScaleFactor ) const |
Definition at line 309 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
overridevirtual |
Add some method for now as a first step to move the tool to then new interface.
Implements IAsgPhotonEfficiencyCorrectionTool.
Definition at line 296 of file AsgPhotonEfficiencyCorrectionTool.cxx.
| CP::CorrectionCode AsgPhotonEfficiencyCorrectionTool::getEfficiencyScaleFactorError | ( | columnar::EgammaId | inputObject, |
| columnar::EventInfoId | eventInfo, | ||
| double & | efficiencyScaleFactorError ) const |
Definition at line 343 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
overridevirtual |
Get the "photon scale factor error" as a return value.
Implements IAsgPhotonEfficiencyCorrectionTool.
Definition at line 330 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
private |
Definition at line 436 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
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.
| ptr | The bare pointer to the object that the event store should know about |
Definition at line 119 of file AsgTool.cxx.
|
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.
| ptr | The bare pointer to the object that the event store should know about |
Definition at line 106 of file AsgTool.cxx.
|
inherited |
Get one of the tool's properties.
|
overridevirtual |
Gaudi Service Interface method implementations.
Reimplemented from asg::AsgTool.
Definition at line 99 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
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.
|
overridevirtual |
The methods below should notify the user of what is actually in the list , without him having to go in the wiki.
returns: whether this tool is affected by the given systematic
Implements CP::ISystematicsTool.
Definition at line 368 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
inlineinherited |
Definition at line 24 of file AthCommonMsg.h.
|
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:
This function's name doesn't follow the ATLAS coding rules, and as such will be removed in the not too distant future.
Definition at line 101 of file AsgTool.cxx.
|
inlineinherited |
Definition at line 30 of file AthCommonMsg.h.
|
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.
|
virtualinherited |
Print the state of the tool.
Implements asg::IAsgTool.
Reimplemented in AsgHelloTool, HI::HIPileupTool, JetBottomUpSoftDrop, JetConstituentsRetriever, JetDumper, JetFinder, JetFromPseudojet, JetModifiedMassDrop, JetPileupLabelingTool, JetPruner, JetPseudojetRetriever, JetReclusterer, JetReclusteringTool, JetRecTool, JetRecursiveSoftDrop, JetSoftDrop, JetSplitter, JetSubStructureMomentToolsBase, JetToolRunner, JetTrimmer, JetTruthLabelingTool, KtDeltaRTool, and LundVariablesTool.
Definition at line 131 of file AsgTool.cxx.
|
overridevirtual |
returns: the list of all systematics this tool recommends to use
Implements CP::IReentrantSystematicsTool.
Definition at line 399 of file AsgPhotonEfficiencyCorrectionTool.cxx.
| StatusCode AsgPhotonEfficiencyCorrectionTool::registerSystematics | ( | ) |
Register the systematics with the registry and add them to the recommended list.
Definition at line 389 of file AsgPhotonEfficiencyCorrectionTool.cxx.
|
inlineprotectedinherited |
Definition at line 380 of file AthCommonDataStore.h.
|
inlineprotectedinherited |
remove all handles from I/O resolution
Definition at line 364 of file AthCommonDataStore.h.
|
overridevirtualinherited |
Perform system initialization for an algorithm.
We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.
Reimplemented in asg::AsgMetadataTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and DerivationFramework::CfAthAlgTool.
|
overridevirtualinherited |
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
|
inlineinherited |
Definition at line 308 of file AthCommonDataStore.h.
|
private |
Definition at line 179 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Definition at line 152 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Currently applied systematics.
Definition at line 104 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
The list of input file names.
Definition at line 121 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Definition at line 122 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Force the data type to a given value.
Definition at line 131 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Definition at line 147 of file AsgPhotonEfficiencyCorrectionTool.h.
|
privateinherited |
Pointer to StoreGate (detector store by default)
Definition at line 393 of file AthCommonDataStore.h.
|
privateinherited |
Pointer to StoreGate (event store by default)
Definition at line 390 of file AthCommonDataStore.h.
|
private |
Definition at line 113 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Definition at line 114 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Definition at line 115 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Definition at line 116 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Isolation working point.
Definition at line 134 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
map filename
Definition at line 140 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Definition at line 143 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Definition at line 150 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
The string for the result.
Definition at line 128 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
The prefix string for the result.
Definition at line 125 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Definition at line 98 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Pointer to the underlying ROOT based tool.
Definition at line 97 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Definition at line 107 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Systematics filter map.
Definition at line 101 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Trigger name for trigger SF.
Definition at line 137 of file AsgPhotonEfficiencyCorrectionTool.h.
|
private |
Definition at line 146 of file AsgPhotonEfficiencyCorrectionTool.h.
|
privateinherited |
Definition at line 399 of file AthCommonDataStore.h.
|
privateinherited |
Definition at line 398 of file AthCommonDataStore.h.