ATLAS Offline Software
ISelectionWriteAccessor.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__I_SELECTION_WRITE_ACCESSOR_H
9 #define SELECTION_HELPERS__I_SELECTION_WRITE_ACCESSOR_H
10 
13 #include <memory>
14 
15 class StatusCode;
16 
17 namespace CP
18 {
19  class ISystematicsSvc;
20  class SystematicSet;
21 
22 
37 
39  {
40  // no slicing
42 
44  public:
45  virtual ~ISelectionWriteAccessor () noexcept = default;
46 
48  public:
49  virtual void setBits (const SG::AuxElement& element,
51  const CP::SystematicSet *sys = nullptr) const = 0;
52 
54  public:
55  virtual void setBool (const SG::AuxElement& element,
56  bool selection,
57  const CP::SystematicSet *sys = nullptr) const = 0;
58 
60  public:
61  virtual std::string label () const = 0;
62 
63 
65  public:
66  virtual StatusCode
68  const CP::SystematicSet& fullAffecting,
69  const std::vector<CP::SystematicSet>& sysList,
70  const std::string& objectName) = 0;
71  };
72 
73 
83  std::unique_ptr<ISelectionWriteAccessor>& accessor,
84  bool defaultToChar = false);
85 }
86 
87 #endif
CP::ISelectionWriteAccessor
a specialized accessor to write a selection decoration to an xAOD object
Definition: ISelectionWriteAccessor.h:39
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
CP::ISystematicsSvc
the interface for the central systematics service
Definition: ISystematicsSvc.h:25
CP::ISelectionWriteAccessor::setBool
virtual void setBool(const SG::AuxElement &element, bool selection, const CP::SystematicSet *sys=nullptr) const =0
set the selection decoration
CP::SelectionType
uint32_t SelectionType
the type for selection decorations that are meant to hold a asg::AcceptData
Definition: SelectionHelpers.h:26
CP::SystematicSet
Class to wrap a set of SystematicVariations.
Definition: SystematicSet.h:31
CP::makeSelectionWriteAccessor
StatusCode makeSelectionWriteAccessor(const std::string &name, std::unique_ptr< ISelectionWriteAccessor > &accessor, bool defaultToChar)
Produces a simple ISelectionWriteAccessor accessing the given decoration.
Definition: ISelectionAccessor.cxx:170
CP::ISelectionWriteAccessor::operator=
ISelectionWriteAccessor & operator=(const ISelectionWriteAccessor &)=delete
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
mapkey::sys
@ sys
Definition: TElectronEfficiencyCorrectionTool.cxx:42
CP::ISelectionWriteAccessor::setBits
virtual void setBits(const SG::AuxElement &element, SelectionType selection, const CP::SystematicSet *sys=nullptr) const =0
set the selection decoration
CP::ISelectionWriteAccessor::label
virtual std::string label() const =0
get the label of the accessor
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
vector
Definition: MultiHisto.h:13
CP::ISelectionWriteAccessor::fillSystematics
virtual StatusCode fillSystematics(const ISystematicsSvc &svc, const CP::SystematicSet &fullAffecting, const std::vector< CP::SystematicSet > &sysList, const std::string &objectName)=0
fill the systematic variations
Handler::svc
AthROOTErrorHandlerSvc * svc
Definition: AthROOTErrorHandlerSvc.cxx:10
selection
std::string selection
Definition: fbtTestBasics.cxx:73
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
xAOD::JetAttributeAccessor::accessor
const AccessorWrapper< T > * accessor(xAOD::JetAttribute::AttributeID id)
Returns an attribute accessor corresponding to an AttributeID.
Definition: JetAccessorMap.h:26
CP::ISelectionWriteAccessor::~ISelectionWriteAccessor
virtual ~ISelectionWriteAccessor() noexcept=default
standard (virtual) destructor
python.CaloScaleNoiseConfig.default
default
Definition: CaloScaleNoiseConfig.py:79
AuxElement.h
Base class for elements of a container that can have aux data.
SelectionHelpers.h