![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
8 #ifndef SYSTEMATICS_HANDLES__SYSTEMATICS_SVC_H
9 #define SYSTEMATICS_HANDLES__SYSTEMATICS_SVC_H
17 #include <unordered_map>
37 ISvcLocator* pSvcLocator);
48 virtual std::vector<CP::SystematicSet>
59 const std::string& decorName)
const override;
62 const std::string& decorName,
66 const std::string& toName)
const override;
71 const std::string&
name,
82 Gaudi::Property<std::vector<std::string>>
m_systematicsList {
this,
"systematicsList", {},
"the list of systematics to run"};
86 Gaudi::Property<std::string>
m_systematicsRegex {
this,
"systematicsRegex",
"(.*)",
"systematics filter regex"};
95 Gaudi::Property<float>
m_sigmaRecommended {
this,
"sigmaRecommended", 0,
"the sigma with which to run recommended systematics"};
99 Gaudi::Property<std::string>
m_nominalSystematicsName {
this,
"nominalSystematicsName",
"NOSYS",
"the name to use for the nominal systematic (instead of the empty string)"};
112 mutable std::unordered_map<std::string,CP::SystematicSet> m_objectSystematics
ATLAS_THREAD_SAFE;
virtual StatusCode makeSystematicsName(std::string &result, const std::string &name, const CP::SystematicSet &sys) const override
make the name for the given systematics
virtual StatusCode finalize() override
the interface for the central systematics service
std::unordered_map< std::string, CP::SystematicSet > m_objectSystematics ATLAS_THREAD_SAFE
the list of per-object systematics
virtual CP::SystematicSet getDecorSystematics(const std::string &objectName, const std::string &decorName) const override
get the systematics for the given object in the event store
std::mutex m_systematicsMutex
a mutex for accessing the above mutable members
Class to wrap a set of SystematicVariations.
SystematicsSvc(const std::string &name, ISvcLocator *pSvcLocator)
standard constructor
std::unordered_map< std::string, CP::SystematicSet > m_decorSystematics ATLAS_THREAD_SAFE
the list of per-object-and-decoration systematics
virtual StatusCode setObjectSystematics(const std::string &name, const CP::SystematicSet &systematics) const override
set the systematics for the given object in the event store
SystematicSet m_recommendedSystematics ATLAS_THREAD_SAFE
the list of recommended systematics
Gaudi::Property< std::vector< std::string > > m_systematicsList
the names of the systematics to request
Select isolated Photons, Electrons and Muons.
virtual StatusCode initialize() override
set up/tear down functions
virtual StatusCode addSystematics(const CP::SystematicSet &recommended, const CP::SystematicSet &affecting) const override
register a set of recommended and affecting systematics
virtual CP::SystematicSet getObjectSystematics(const std::string &name) const override
get the systematics for the given object in the event store
virtual StatusCode registerCopy(const std::string &fromName, const std::string &toName) const override
register a (shallow) copy from one object to the next
Base class for the dual-use service implementation classes.
Gaudi::Property< float > m_sigmaRecommended
load all recommended systematics at the given number of sigmas
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual std::vector< CP::SystematicSet > makeSystematicsVector() const override
get the list of systematics
virtual std::string getCopySource(const std::string &toName) const override
get a source object name from which a target object has been copied
std::unordered_map< std::string, std::string > m_copies ATLAS_THREAD_SAFE
the map of registered copies
SystematicSet m_affectingSystematics ATLAS_THREAD_SAFE
the list of affecting systematics
Gaudi::Property< std::string > m_nominalSystematicsName
nominal systematics name
the canonical implementation of ISystematicsSvc
virtual StatusCode setDecorSystematics(const std::string &objectName, const std::string &decorName, const CP::SystematicSet &systematics) const override
set the systematics for the given object in the event store
Define macros for attributes used to control the static checker.
Gaudi::Property< std::string > m_systematicsRegex
the regular expression for filterinf systematics