ATLAS Offline Software
IsolationHelper.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef IsolationTool_IsolationHelper_H
6 #define IsolationTool_IsolationHelper_H
7 
8 #include "AsgTools/AsgTool.h"
9 #include "AsgTools/ToolHandle.h"
14 #include <xAODBase/IParticle.h>
16 #include "xAODCore/ShallowCopy.h"
17 
18 namespace CP {
19 
21  public virtual IIsolationHelper {
24  public:
25  // this is a standard constructor
26  IsolationHelper (const std::string& name);
27  virtual ~IsolationHelper (){};
28 
30  virtual StatusCode initialize();
31 
33  virtual StatusCode finalize();
34 
35  bool isolation(float& value, const xAOD::IParticle& par, xAOD::Iso::IsolationType type) const;
38  bool isolation(float& value, const xAOD::IParticle& par, xAOD::Iso::IsolationType type, const std::vector<xAOD::Iso::IsolationCaloCorrection>& corrs) const;
42  bool updateIsolation(xAOD::MuonContainer*& copy,xAOD::ShallowAuxContainer*& copyaux, std::vector<xAOD::Iso::IsolationType>& types, xAOD::Iso::IsolationCaloCorrectionBitset corrMask, std::string muonkey, bool recordSG) const;
43 
44  private:
46 
47  float m_coreCone;
48  //xAOD::Iso::IsolationTrackCorrectionBitsetHelper m_trkIsoBitHeler;
49 
50 };
51 
52 }
53 #endif
ShallowCopy.h
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
IIsolationHelper.h
IParticle.h
IsolationCorrectionHelper.h
IsolationCorrection.h
xAOD::Iso::IsolationCaloCorrectionBitset
std::bitset< 32 > IsolationCaloCorrectionBitset
typedef of the bit word used to encode the corrections used to calculate the isolation
Definition: Event/xAOD/xAODPrimitives/xAODPrimitives/IsolationCorrection.h:114
EventShape.h
CP::IsolationHelper::correctionBitset
bool correctionBitset(xAOD::Iso::IsolationCaloCorrectionBitset &mask, const xAOD::IParticle &par, xAOD::Iso::IsolationType type) const
Definition: IsolationHelper.cxx:48
IsolationType.h
CP::IsolationHelper::initialize
virtual StatusCode initialize()
initialize
Definition: IsolationHelper.cxx:28
CP::IsolationHelper::isolation
bool isolation(float &value, const xAOD::IParticle &par, xAOD::Iso::IsolationType type) const
Definition: IsolationHelper.cxx:37
xAOD::ShallowAuxContainer
Class creating a shallow copy of an existing auxiliary container.
Definition: ShallowAuxContainer.h:54
athena.value
value
Definition: athena.py:124
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:41
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
CP::IIsolationHelper
Definition: IIsolationHelper.h:22
python.utils.AtlRunQueryLookup.mask
string mask
Definition: AtlRunQueryLookup.py:460
xAOD::Iso::coreArea
@ coreArea
area used to calculate this correction
Definition: Event/xAOD/xAODPrimitives/xAODPrimitives/IsolationCorrection.h:96
CP::IsolationHelper::~IsolationHelper
virtual ~IsolationHelper()
Definition: IsolationHelper.h:27
CP::IsolationHelper::correction
bool correction(float &value, const xAOD::IParticle &par, xAOD::Iso::IsolationType type, const xAOD::Iso::IsolationCaloCorrectionBitset &corrMask) const
Definition: IsolationHelper.cxx:73
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
xAOD::Iso::IsolationType
IsolationType
Overall enumeration for isolation types in xAOD files.
Definition: IsolationType.h:26
CP::IsolationHelper::m_coreCone
float m_coreCone
Definition: IsolationHelper.h:47
CP::IsolationHelper
Definition: IsolationHelper.h:21
CP::IsolationHelper::updateIsolation
bool updateIsolation(xAOD::MuonContainer *&copy, xAOD::ShallowAuxContainer *&copyaux, std::vector< xAOD::Iso::IsolationType > &types, xAOD::Iso::IsolationCaloCorrectionBitset corrMask, std::string muonkey, bool recordSG) const
Definition: IsolationHelper.cxx:117
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
createCoolChannelIdFile.par
par
Definition: createCoolChannelIdFile.py:29
CP::IsolationHelper::getPileupCorrection
bool getPileupCorrection(float &value, const xAOD::IParticle &par, xAOD::Iso::IsolationType type, xAOD::Iso::IsolationCaloCorrectionBitset corrMask) const
Definition: IsolationHelper.cxx:146
xAOD::Iso::IsolationCaloCorrection
IsolationCaloCorrection
Enumeration for different ways of correcting isolation in xAOD files.
Definition: Event/xAOD/xAODPrimitives/xAODPrimitives/IsolationCorrection.h:18
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
calibdata.copy
bool copy
Definition: calibdata.py:27
CP::IsolationHelper::finalize
virtual StatusCode finalize()
finalize
Definition: IsolationHelper.cxx:32
ToolHandle.h
AsgTool.h
CP::IsolationHelper::IsolationHelper
IsolationHelper(const std::string &name)
Create a constructor for Athena.
Definition: IsolationHelper.cxx:17