ATLAS Offline Software
Public Types | Public Member Functions | Static Public Member Functions | List of all members
IEMExtrapolationTools Class Referenceabstract

#include <IEMExtrapolationTools.h>

Inheritance diagram for IEMExtrapolationTools:
Collaboration diagram for IEMExtrapolationTools:

Public Types

enum  TrkExtrapDef { fromLastMeasurement, fromPerigee, fromPerigeeRescaled, fromCaloToPerigee }
 Enum for track extrapolation to calo. More...
 

Public Member Functions

virtual ~IEMExtrapolationTools ()
 
virtual StatusCode initialize ()=0
 initialize method More...
 
virtual std::pair< std::vector< CaloSampling::CaloSample >, std::vector< std::unique_ptr< Trk::Surface > > > getClusterLayerSurfaces (const xAOD::CaloCluster &cluster, const CaloDetDescrManager &caloDD) const =0
 
virtual StatusCode getMatchAtCalo (const EventContext &ctx, const xAOD::CaloCluster &cluster, const xAOD::TrackParticle &trkPB, const std::vector< CaloSampling::CaloSample > &samples, const std::vector< std::unique_ptr< Trk::Surface >> &surfaces, std::array< double, 4 > &eta, std::array< double, 4 > &phi, std::array< double, 4 > &deltaEta, std::array< double, 4 > &deltaPhi, unsigned int extrapFrom=fromPerigee) const =0
 get eta, phi, deltaEta, and deltaPhi at the four calorimeter layers given the Trk::ParametersBase. More...
 
virtual bool matchesAtCalo (const xAOD::CaloCluster *cluster, const xAOD::Vertex *vertex, float etaAtCalo, float phiAtCalo) const =0
 test for vertex-to-cluster match given also the positions at the calorimeter from the vertex extrapolation
More...
 
virtual bool getEtaPhiAtCalo (const EventContext &ctx, const xAOD::Vertex *vertex, float *etaAtCalo, float *phiAtCalo) const =0
 get eta, phi at EM2 given a vertex which is converted to NeutralParameters. More...
 
virtual bool getEtaPhiAtCalo (const EventContext &ctx, const Trk::TrackParameters *trkPar, float *etaAtCalo, float *phiAtCalo) const =0
 get eta, phi at EM2 given NeutralParameters. More...
 
virtual Amg::Vector3D getMomentumAtVertex (const EventContext &ctx, const xAOD::Vertex &, unsigned int) const =0
 get the momentum of the i-th trackParticle attached to the vertex at the vertex (designed for conversions) More...
 
virtual Amg::Vector3D getMomentumAtVertex (const EventContext &ctx, const xAOD::Vertex &, bool reuse=true) const =0
 get sum of the momenta at the vertex (designed for conversions). More...
 

Static Public Member Functions

static const InterfaceID & interfaceID ()
 AlgTool interface methods. More...
 

Detailed Description

Definition at line 27 of file IEMExtrapolationTools.h.

Member Enumeration Documentation

◆ TrkExtrapDef

Enum for track extrapolation to calo.

Enumerator
fromLastMeasurement 

from the last measurement of TrackParticle

fromPerigee 

from the perigee of TrackParticle

fromPerigeeRescaled 

from the perigee of TrackParticle recaled by Ecluster

fromCaloToPerigee 

from the calo to the perigee - fast extrapolation

Definition at line 32 of file IEMExtrapolationTools.h.

Constructor & Destructor Documentation

◆ ~IEMExtrapolationTools()

virtual IEMExtrapolationTools::~IEMExtrapolationTools ( )
inlinevirtual

Definition at line 44 of file IEMExtrapolationTools.h.

44 {};

Member Function Documentation

◆ getClusterLayerSurfaces()

virtual std::pair<std::vector<CaloSampling::CaloSample>, std::vector<std::unique_ptr<Trk::Surface> > > IEMExtrapolationTools::getClusterLayerSurfaces ( const xAOD::CaloCluster cluster,
const CaloDetDescrManager caloDD 
) const
pure virtual

Implemented in EMExtrapolationTools.

◆ getEtaPhiAtCalo() [1/2]

virtual bool IEMExtrapolationTools::getEtaPhiAtCalo ( const EventContext &  ctx,
const Trk::TrackParameters trkPar,
float *  etaAtCalo,
float *  phiAtCalo 
) const
pure virtual

get eta, phi at EM2 given NeutralParameters.

Return false if the extrapolation fails

Implemented in EMExtrapolationTools.

◆ getEtaPhiAtCalo() [2/2]

virtual bool IEMExtrapolationTools::getEtaPhiAtCalo ( const EventContext &  ctx,
const xAOD::Vertex vertex,
float *  etaAtCalo,
float *  phiAtCalo 
) const
pure virtual

get eta, phi at EM2 given a vertex which is converted to NeutralParameters.

Return false if the extrapolation fails

Implemented in EMExtrapolationTools.

◆ getMatchAtCalo()

virtual StatusCode IEMExtrapolationTools::getMatchAtCalo ( const EventContext &  ctx,
const xAOD::CaloCluster cluster,
const xAOD::TrackParticle trkPB,
const std::vector< CaloSampling::CaloSample > &  samples,
const std::vector< std::unique_ptr< Trk::Surface >> &  surfaces,
std::array< double, 4 > &  eta,
std::array< double, 4 > &  phi,
std::array< double, 4 > &  deltaEta,
std::array< double, 4 > &  deltaPhi,
unsigned int  extrapFrom = fromPerigee 
) const
pure virtual

get eta, phi, deltaEta, and deltaPhi at the four calorimeter layers given the Trk::ParametersBase.

whether or not to extrapolate to each calo sample

Implemented in EMExtrapolationTools.

◆ getMomentumAtVertex() [1/2]

virtual Amg::Vector3D IEMExtrapolationTools::getMomentumAtVertex ( const EventContext &  ctx,
const xAOD::Vertex ,
bool  reuse = true 
) const
pure virtual

get sum of the momenta at the vertex (designed for conversions).

Retrieve from auxdata if available and <reuse> is true

Implemented in EMExtrapolationTools.

◆ getMomentumAtVertex() [2/2]

virtual Amg::Vector3D IEMExtrapolationTools::getMomentumAtVertex ( const EventContext &  ctx,
const xAOD::Vertex ,
unsigned int   
) const
pure virtual

get the momentum of the i-th trackParticle attached to the vertex at the vertex (designed for conversions)

Implemented in EMExtrapolationTools.

◆ initialize()

virtual StatusCode IEMExtrapolationTools::initialize ( )
pure virtual

initialize method

Implemented in EMExtrapolationTools.

◆ interfaceID()

const InterfaceID & IEMExtrapolationTools::interfaceID ( )
inlinestatic

AlgTool interface methods.

Definition at line 108 of file IEMExtrapolationTools.h.

109 {
110  return IID_IEMExtrapolationTools;
111 }

◆ matchesAtCalo()

virtual bool IEMExtrapolationTools::matchesAtCalo ( const xAOD::CaloCluster cluster,
const xAOD::Vertex vertex,
float  etaAtCalo,
float  phiAtCalo 
) const
pure virtual

test for vertex-to-cluster match given also the positions at the calorimeter from the vertex extrapolation

Implemented in EMExtrapolationTools.


The documentation for this class was generated from the following file:
IEMExtrapolationTools::fromCaloToPerigee
@ fromCaloToPerigee
from the calo to the perigee - fast extrapolation
Definition: IEMExtrapolationTools.h:41
IEMExtrapolationTools::fromPerigee
@ fromPerigee
from the perigee of TrackParticle
Definition: IEMExtrapolationTools.h:37
IEMExtrapolationTools::fromPerigeeRescaled
@ fromPerigeeRescaled
from the perigee of TrackParticle recaled by Ecluster
Definition: IEMExtrapolationTools.h:39
IEMExtrapolationTools::fromLastMeasurement
@ fromLastMeasurement
from the last measurement of TrackParticle
Definition: IEMExtrapolationTools.h:35