ATLAS Offline Software
IsolationConditionFormula.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3  */
4 
5 #ifndef ISOLATIONSELECTION_ISOLATIONCONDITIONFORMULA_H
6 #define ISOLATIONSELECTION_ISOLATIONCONDITIONFORMULA_H
7 
8 #include <memory>
9 
11 
12 // Forward Declaration(s)
13 class TF1;
14 class TH3F;
15 
16 namespace CP {
18  public:
19  IsolationConditionFormula(const std::string& name, xAOD::Iso::IsolationType isoType, const std::string& cutFunction,
20  bool invertCut = false, const std::string& isoDecSuffix = "");
21  IsolationConditionFormula(const std::string& name, const std::string& isoType, const std::string& cutFunction, bool invertCut = false, const std::string& isoDecSuffix = "");
22  virtual ~IsolationConditionFormula() = default;
23 
24  virtual bool accept(const xAOD::IParticle& x) const override;
25  virtual bool accept(const strObj& x) const override;
26 
27  private:
28  std::shared_ptr<TF1> m_cutFunction{nullptr};
29  bool m_invertCut{false};
30  };
31 } // namespace CP
32 #endif
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:41
x
#define x
CP::IsolationConditionFormula::m_cutFunction
std::shared_ptr< TF1 > m_cutFunction
Definition: IsolationConditionFormula.h:28
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
CP::IsolationCondition
Definition: IsolationCondition.h:30
CP::strObj
Definition: IsolationCondition.h:23
IsolationCondition.h
xAOD::Iso::IsolationType
IsolationType
Overall enumeration for isolation types in xAOD files.
Definition: IsolationType.h:26
CP::IsolationConditionFormula::accept
virtual bool accept(const xAOD::IParticle &x) const override
Definition: IsolationConditionFormula.cxx:29
CP::IsolationCondition::name
const std::string & name() const
Definition: IsolationCondition.cxx:36
CP::IsolationConditionFormula::IsolationConditionFormula
IsolationConditionFormula(const std::string &name, xAOD::Iso::IsolationType isoType, const std::string &cutFunction, bool invertCut=false, const std::string &isoDecSuffix="")
Definition: IsolationConditionFormula.cxx:15
CP::IsolationConditionFormula::m_invertCut
bool m_invertCut
Definition: IsolationConditionFormula.h:29
CP::IsolationConditionFormula::~IsolationConditionFormula
virtual ~IsolationConditionFormula()=default
CP::IsolationConditionFormula
Definition: IsolationConditionFormula.h:17