ATLAS Offline Software
Loading...
Searching...
No Matches
ISysHandleBase.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7
8#ifndef SYSTEMATICS_HANDLES__I_SYS_HANDLE_BASE_H
9#define SYSTEMATICS_HANDLES__I_SYS_HANDLE_BASE_H
10
11#include <string>
12#include <vector>
13
14class StatusCode;
15
16namespace CP
17{
18 class ISystematicsSvc;
19 class SystematicSet;
20
21
26
28 {
30 public:
31 virtual ~ISysHandleBase () noexcept = default;
32
34 public:
35 virtual bool empty () const noexcept = 0;
36
38 public:
39 virtual std::string getNamePattern () const = 0;
40
46 public:
47 virtual CP::SystematicSet
49
51 public:
52 virtual StatusCode
54 const CP::SystematicSet& fullAffecting,
55 const std::vector<CP::SystematicSet>& sysList) = 0;
56 };
57}
58
59#endif
a basic interface for all systematics handles
virtual bool empty() const noexcept=0
whether this is an empty handle
virtual ~ISysHandleBase() noexcept=default
standard (virtual) destructor
virtual std::string getNamePattern() const =0
get the name pattern before substitution
virtual StatusCode fillSystematics(const ISystematicsSvc &svc, const CP::SystematicSet &fullAffecting, const std::vector< CP::SystematicSet > &sysList)=0
register and cache the systematics
virtual CP::SystematicSet getInputAffecting(const ISystematicsSvc &svc) const =0
get the affecting systematics if this is an input handle
the interface for the central systematics service
Class to wrap a set of SystematicVariations.
Select isolated Photons, Electrons and Muons.
STL namespace.