ATLAS Offline Software
IIsolationHelper.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_IISOLATIONHELPERTOOL_H
6 #define ISOLATIONTOOL_IISOLATIONHELPERTOOL_H
7 
8 #include "AsgTools/AsgTool.h"
13 #include <xAODBase/IParticle.h>
15 #include "xAODCore/ShallowCopy.h"
16 #include "xAODMuon/MuonContainer.h"
17 
18 struct strObj;
19 
20 namespace CP
21 {
22  class IIsolationHelper : public virtual asg::IAsgTool {
23 
25 
26  public:
27  virtual bool isolation(float& value, const xAOD::IParticle& par, xAOD::Iso::IsolationType type) const = 0;
30  virtual bool isolation(float& value, const xAOD::IParticle& par, xAOD::Iso::IsolationType type, const std::vector<xAOD::Iso::IsolationCaloCorrection>& corrs) const = 0;
33  virtual bool getPileupCorrection(float& value, const xAOD::IParticle& par, xAOD::Iso::IsolationType type, float coreArea) const = 0;
34  virtual bool updateIsolation(xAOD::MuonContainer*& copy,xAOD::ShallowAuxContainer*& copyaux, std::vector<xAOD::Iso::IsolationType>& types, xAOD::Iso::IsolationCaloCorrectionBitset corrMask, std::string muonkey, bool recordSG) const = 0;
35  };
36 
37 }
38 #endif
ShallowCopy.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::IIsolationHelper::isolation
virtual bool isolation(float &value, const xAOD::IParticle &par, xAOD::Iso::IsolationType type, const std::vector< xAOD::Iso::IsolationCaloCorrection > &corrs) const =0
IsolationType.h
CP::IIsolationHelper::isolation
virtual bool isolation(float &value, const xAOD::IParticle &par, xAOD::Iso::IsolationType type) const =0
asg::IAsgTool
Base class for the dual-use tool interface classes.
Definition: IAsgTool.h:41
CP::IIsolationHelper::isolation
virtual bool isolation(float &value, const xAOD::IParticle &par, xAOD::Iso::IsolationType type, const xAOD::Iso::IsolationCaloCorrectionBitset &corrMask) const =0
xAOD::ShallowAuxContainer
Class creating a shallow copy of an existing auxiliary container.
Definition: ShallowAuxContainer.h:54
CP::IIsolationHelper::getPileupCorrection
virtual bool getPileupCorrection(float &value, const xAOD::IParticle &par, xAOD::Iso::IsolationType type, xAOD::Iso::IsolationCaloCorrectionBitset corrMask) const =0
athena.value
value
Definition: athena.py:122
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:40
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
CP::IIsolationHelper::correctionBitset
virtual bool correctionBitset(xAOD::Iso::IsolationCaloCorrectionBitset &mask, const xAOD::IParticle &par, xAOD::Iso::IsolationType type) const =0
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
xAOD::Iso::IsolationType
IsolationType
Overall enumeration for isolation types in xAOD files.
Definition: IsolationType.h:26
IsolationCommon.h
CP::IIsolationHelper::getPileupCorrection
virtual bool getPileupCorrection(float &value, const xAOD::IParticle &par, xAOD::Iso::IsolationType type, float coreArea) const =0
ASG_TOOL_INTERFACE
#define ASG_TOOL_INTERFACE(CLASSNAME)
Definition: AsgToolMacros.h:40
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
createCoolChannelIdFile.par
par
Definition: createCoolChannelIdFile.py:29
CP::IIsolationHelper::correction
virtual bool correction(float &value, const xAOD::IParticle &par, xAOD::Iso::IsolationType type, const xAOD::Iso::IsolationCaloCorrectionBitset &corrMask) const =0
MuonContainer.h
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
CP::IIsolationHelper::updateIsolation
virtual bool updateIsolation(xAOD::MuonContainer *&copy, xAOD::ShallowAuxContainer *&copyaux, std::vector< xAOD::Iso::IsolationType > &types, xAOD::Iso::IsolationCaloCorrectionBitset corrMask, std::string muonkey, bool recordSG) const =0
calibdata.copy
bool copy
Definition: calibdata.py:27
AsgTool.h