ATLAS Offline Software
SelectionAccessorExprNot.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
8 
9 namespace CP {
10 
12  std::unique_ptr<ISelectionReadAccessor> child)
13  : m_child(std::move(child)) {}
14 
16  const CP::SystematicSet *sys) const {
17  return !m_child->getBool(element,sys);
18 }
19 
20 std::string SelectionAccessorExprNot::label() const {
21  return "!" + m_child->label();
22 }
23 
26  const std::string& objectName) const
27 {
28  return m_child->getInputAffecting (svc, objectName);
29 }
30 
33  const std::vector<CP::SystematicSet>& sysList,
34  const std::string& objectName)
35 {
36  return m_child->fillSystematics (svc, sysList, objectName);
37 }
38 
39 } // namespace CP
CP::ISystematicsSvc
the interface for the central systematics service
Definition: ISystematicsSvc.h:25
CP::SelectionAccessorExprNot::getBool
virtual bool getBool(const SG::AuxElement &element, const CP::SystematicSet *sys) const override
Definition: SelectionAccessorExprNot.cxx:15
SG::AuxElement
Base class for elements of a container that can have aux data.
Definition: AuxElement.h:446
SystematicSet.h
CP::SystematicSet
Class to wrap a set of SystematicVariations.
Definition: SystematicSet.h:31
CP::SelectionAccessorExprNot::label
virtual std::string label() const override
Definition: SelectionAccessorExprNot.cxx:20
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
mapkey::sys
@ sys
Definition: TElectronEfficiencyCorrectionTool.cxx:42
CP::SelectionAccessorExprNot::SelectionAccessorExprNot
SelectionAccessorExprNot(std::unique_ptr< ISelectionReadAccessor > child)
Definition: SelectionAccessorExprNot.cxx:11
CP::SelectionAccessorExprNot::fillSystematics
virtual StatusCode fillSystematics(const ISystematicsSvc &svc, const std::vector< CP::SystematicSet > &sysList, const std::string &objectName) override
fill the systematic variations
Definition: SelectionAccessorExprNot.cxx:32
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Handler::svc
AthROOTErrorHandlerSvc * svc
Definition: AthROOTErrorHandlerSvc.cxx:10
CP::SelectionAccessorExprNot::getInputAffecting
virtual CP::SystematicSet getInputAffecting(const ISystematicsSvc &svc, const std::string &objectName) const override
get the systematics when reading from the decoration
Definition: SelectionAccessorExprNot.cxx:25
SelectionAccessorExprNot.h
CP::SelectionAccessorExprNot::m_child
std::unique_ptr< ISelectionReadAccessor > m_child
Definition: SelectionAccessorExprNot.h:38