ATLAS Offline Software
Loading...
Searching...
No Matches
ISystematicsSvc.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7
8#ifndef SYSTEMATICS_HANDLES__I_SYSTEMATICS_SVC_H
9#define SYSTEMATICS_HANDLES__I_SYSTEMATICS_SVC_H
10
13
14class StatusCode;
15
16namespace CP
17{
24
25 class ISystematicsSvc : virtual public asg::IAsgService
26 {
27 public:
28
30
32 virtual std::vector<CP::SystematicSet>
34
40 virtual StatusCode
41 addSystematics (const CP::SystematicSet& recommended,
42 const CP::SystematicSet& affecting) const = 0;
43
45 virtual CP::SystematicSet
46 getObjectSystematics (const std::string& name) const = 0;
47
49 virtual StatusCode
50 setObjectSystematics (const std::string& name,
51 const CP::SystematicSet& systematics) const = 0;
52
54 virtual CP::SystematicSet
55 getDecorSystematics (const std::string& objectName,
56 const std::string& decorName) const = 0;
57
59 virtual StatusCode
60 setDecorSystematics (const std::string& objectName,
61 const std::string& decorName,
62 const CP::SystematicSet& systematics) const = 0;
63
65 virtual StatusCode
66 registerCopy (const std::string& fromName,
67 const std::string& toName) const = 0;
68
71 virtual std::string
72 getCopySource (const std::string& toName) const = 0;
73
75 virtual StatusCode
77 const std::string& name,
78 const CP::SystematicSet& sys) const = 0;
79 };
80}
81
82#endif
static const std::vector< std::string > systematics
the interface for the central systematics service
virtual CP::SystematicSet getObjectSystematics(const std::string &name) const =0
get the systematics for the given object in the event store
virtual StatusCode registerCopy(const std::string &fromName, const std::string &toName) const =0
register a (shallow) copy from one object to the next
virtual std::string getCopySource(const std::string &toName) const =0
get a source object name from which a target object has been copied
DeclareInterfaceID(CP::ISystematicsSvc, 1, 0)
virtual std::vector< CP::SystematicSet > makeSystematicsVector() const =0
get the list of systematics
virtual StatusCode addSystematics(const CP::SystematicSet &recommended, const CP::SystematicSet &affecting) const =0
register a set of recommended and affecting systematics
virtual CP::SystematicSet getDecorSystematics(const std::string &objectName, const std::string &decorName) const =0
get the systematics for the given object in the event store
virtual StatusCode setDecorSystematics(const std::string &objectName, const std::string &decorName, const CP::SystematicSet &systematics) const =0
set the systematics for the given object in the event store
virtual StatusCode makeSystematicsName(std::string &result, const std::string &name, const CP::SystematicSet &sys) const =0
make the name for the given systematics
virtual StatusCode setObjectSystematics(const std::string &name, const CP::SystematicSet &systematics) const =0
set the systematics for the given object in the event store
Class to wrap a set of SystematicVariations.
Base class for the dual-use service interface classes.
Definition IAsgService.h:26
Select isolated Photons, Electrons and Muons.