ATLAS Offline Software
Loading...
Searching...
No Matches
HIJetCellSubtractorTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
5// HIJetCellSubtractorTool.h
6
7#ifndef HIJETREC_HIJETCELLSUBTRACTORTOOL_H
8#define HIJETREC_HIJETCELLSUBTRACTORTOOL_H
9
22
23
25#include "AsgTools/AsgTool.h"
26
27
29
30{
32 HIJetCellSubtractorTool(const std::string& myname);
33
34 public:
35
41
42 virtual void subtract(xAOD::IParticle::FourMom_t& subtr_mom, const xAOD::IParticle* cl_in, const xAOD::HIEventShapeContainer* shape, const HIEventShapeIndex* index, const ToolHandle<IHIUEModulatorTool>& modulator, const xAOD::HIEventShape* eshape) const override;
43 virtual void subtractWithMoments(xAOD::CaloCluster* cl, const xAOD::HIEventShapeContainer* shape, const HIEventShapeIndex* index, const ToolHandle<IHIUEModulatorTool>& modulator, const xAOD::HIEventShape* eshape) const override;
44 virtual void updateUsingCluster(xAOD::HIEventShapeContainer* shape, const HIEventShapeIndex* index, const xAOD::CaloCluster* cl) const override;
45
46private:
47 void UpdateShape(xAOD::HIEventShapeContainer* shape, const HIEventShapeIndex* index, const CaloCell* theCell, float geoWeight, float eta0, float phi0, bool isNeg) const;
48
49
50};
51
52#endif
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Data object for each calorimeter readout cell.
Definition CaloCell.h:57
virtual void subtractWithMoments(xAOD::CaloCluster *cl, const xAOD::HIEventShapeContainer *shape, const HIEventShapeIndex *index, const ToolHandle< IHIUEModulatorTool > &modulator, const xAOD::HIEventShape *eshape) const override
virtual void updateUsingCluster(xAOD::HIEventShapeContainer *shape, const HIEventShapeIndex *index, const xAOD::CaloCluster *cl) const override
Method to update the shape based on a given cluster two sets of indices are passed by reference and u...
virtual void subtract(xAOD::IParticle::FourMom_t &subtr_mom, const xAOD::IParticle *cl_in, const xAOD::HIEventShapeContainer *shape, const HIEventShapeIndex *index, const ToolHandle< IHIUEModulatorTool > &modulator, const xAOD::HIEventShape *eshape) const override
Implements method defined in base Navigates back to cells to do subtraction First argument is referen...
HIJetCellSubtractorTool(const std::string &myname)
void UpdateShape(xAOD::HIEventShapeContainer *shape, const HIEventShapeIndex *index, const CaloCell *theCell, float geoWeight, float eta0, float phi0, bool isNeg) const
HIJetSubtractorToolBase(const std::string &myname)
Abstract interface for tools that implement constituent based subtraction.
Class providing the definition of the 4-vector interface.
TLorentzVector FourMom_t
Definition of the 4-momentum type.
Definition index.py:1
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.
HIEventShapeContainer_v2 HIEventShapeContainer
Define the latest version of the container.
HIEventShape_v2 HIEventShape
Definition of the latest event info version.