ATLAS Offline Software
SelectionAccessorList.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 
8 #ifndef SELECTION_HELPERS__SELECTION_ACCESSOR_LIST_H
9 #define SELECTION_HELPERS__SELECTION_ACCESSOR_LIST_H
10 
12 
13 #include <memory>
14 #include <vector>
15 
16 namespace CP
17 {
20 
22  {
23  //
24  // public interface
25  //
26 
27  public:
28  SelectionAccessorList (std::vector<std::unique_ptr<ISelectionReadAccessor> > val_list);
29 
30  public:
31  virtual SelectionType
32  getBits (const SG::AuxElement& element,
33  const CP::SystematicSet *sys) const override;
34 
35  public:
36  virtual bool
37  getBool (const SG::AuxElement& element,
38  const CP::SystematicSet *sys) const override;
39 
40  public:
41  virtual std::string label () const override;
42 
43  public:
44  virtual bool isBool () const override;
45 
46  public:
47  virtual CP::SystematicSet
49  const std::string& objectName) const override;
50 
51  public:
52  virtual StatusCode
54  const std::vector<CP::SystematicSet>& sysList,
55  const std::string& objectName) override;
56 
57 
58  //
59  // private interface
60  //
61 
63  private:
64  std::vector<std::unique_ptr<ISelectionReadAccessor> > m_list;
65 
67  private:
68  std::string m_label;
69  };
70 }
71 
72 #endif
CP::ISystematicsSvc
the interface for the central systematics service
Definition: ISystematicsSvc.h:25
SG::AuxElement
Base class for elements of a container that can have aux data.
Definition: AuxElement.h:446
CP::SelectionType
uint32_t SelectionType
the type for selection decorations that are meant to hold a asg::AcceptData
Definition: SelectionHelpers.h:26
CP::SelectionAccessorList::isBool
virtual bool isBool() const override
whether this accessor returns a simple boolean
Definition: SelectionAccessorList.cxx:90
CP::SystematicSet
Class to wrap a set of SystematicVariations.
Definition: SystematicSet.h:31
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
mapkey::sys
@ sys
Definition: TElectronEfficiencyCorrectionTool.cxx:42
CP::SelectionAccessorList
the SelectionAccesor for list of selection decorations
Definition: SelectionAccessorList.h:22
CP::SelectionAccessorList::m_label
std::string m_label
the label of the accessor
Definition: SelectionAccessorList.h:68
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CP::SelectionAccessorList::getInputAffecting
virtual CP::SystematicSet getInputAffecting(const ISystematicsSvc &svc, const std::string &objectName) const override
get the systematics when reading from the decoration
Definition: SelectionAccessorList.cxx:98
CP::SelectionAccessorList::SelectionAccessorList
SelectionAccessorList(std::vector< std::unique_ptr< ISelectionReadAccessor > > val_list)
Definition: SelectionAccessorList.cxx:23
Handler::svc
AthROOTErrorHandlerSvc * svc
Definition: AthROOTErrorHandlerSvc.cxx:10
CP::SelectionAccessorList::label
virtual std::string label() const override
get the label of the accessor
Definition: SelectionAccessorList.cxx:82
CP::SelectionAccessorList::getBool
virtual bool getBool(const SG::AuxElement &element, const CP::SystematicSet *sys) const override
get the selection decoration
Definition: SelectionAccessorList.cxx:69
CP::SelectionAccessorList::getBits
virtual SelectionType getBits(const SG::AuxElement &element, const CP::SystematicSet *sys) const override
get the selection decoration
Definition: SelectionAccessorList.cxx:40
CP::SelectionAccessorList::m_list
std::vector< std::unique_ptr< ISelectionReadAccessor > > m_list
the list of selection accessors I rely on
Definition: SelectionAccessorList.h:64
CP::ISelectionReadAccessor
a specialized accessor to read a selection decoration from/to an xAOD object
Definition: ISelectionReadAccessor.h:39
ISelectionReadAccessor.h
CP::SelectionAccessorList::fillSystematics
virtual StatusCode fillSystematics(const ISystematicsSvc &svc, const std::vector< CP::SystematicSet > &sysList, const std::string &objectName) override
fill the systematic variations
Definition: SelectionAccessorList.cxx:111