ATLAS Offline Software
Public Types | Public Member Functions | Private Attributes | List of all members
columnar::TrackHelpers::TrackMomentumAccessors< CI, CM > Class Template Referencefinal

this gets the four momentum of a track, given the mass (and assuming a charge of +/- 1) More...

#include <TrackHelpers.h>

Collaboration diagram for columnar::TrackHelpers::TrackMomentumAccessors< CI, CM >:

Public Types

using GenVecFourMom_t = xAOD::TrackParticle::GenVecFourMom_t
 

Public Member Functions

 TrackMomentumAccessors (ColumnarTool< CM > &columnarTool)
 
GenVecFourMom_t genvecP4 (ObjectId< CI, CM > trk, double m) const
 
double pt (ObjectId< CI, CM > object, double m) const
 
double eta (ObjectId< CI, CM > object, double m) const
 
double phi (ObjectId< CI, CM > object, double m) const
 

Private Attributes

ColumnAccessor< CI, float, CMm_qOverPAcc
 
ColumnAccessor< CI, float, CMm_thetaAcc
 
ColumnAccessor< CI, RetypeColumn< double, float >, CMm_phiAcc
 

Detailed Description

template<ContainerIdConcept CI = ContainerId::track, typename CM = ColumnarModeDefault>
class columnar::TrackHelpers::TrackMomentumAccessors< CI, CM >

this gets the four momentum of a track, given the mass (and assuming a charge of +/- 1)

Ideally this should probably be integrated with MomentumAccessors, except for the two following issues:

If these issues get resolved, this class could be merge into that class, or otherwise it could potentially be set up as some parallel mechanism.

Definition at line 63 of file TrackHelpers.h.

Member Typedef Documentation

◆ GenVecFourMom_t

template<ContainerIdConcept CI = ContainerId::track, typename CM = ColumnarModeDefault>
using columnar::TrackHelpers::TrackMomentumAccessors< CI, CM >::GenVecFourMom_t = xAOD::TrackParticle::GenVecFourMom_t

Definition at line 77 of file TrackHelpers.h.

Constructor & Destructor Documentation

◆ TrackMomentumAccessors()

template<ContainerIdConcept CI = ContainerId::track, typename CM = ColumnarModeDefault>
columnar::TrackHelpers::TrackMomentumAccessors< CI, CM >::TrackMomentumAccessors ( ColumnarTool< CM > &  columnarTool)
inline

Definition at line 71 of file TrackHelpers.h.

72  : m_qOverPAcc (columnarTool, "qOverP"),
73  m_thetaAcc (columnarTool, "theta"),
74  m_phiAcc (columnarTool, "phi")
75  {}

Member Function Documentation

◆ eta()

template<ContainerIdConcept CI = ContainerId::track, typename CM = ColumnarModeDefault>
double columnar::TrackHelpers::TrackMomentumAccessors< CI, CM >::eta ( ObjectId< CI, CM object,
double  m 
) const
inline

Definition at line 84 of file TrackHelpers.h.

84  {
85  return genvecP4 (object, m).eta(); }

◆ genvecP4()

template<ContainerIdConcept CI = ContainerId::track, typename CM = ColumnarModeDefault>
GenVecFourMom_t columnar::TrackHelpers::TrackMomentumAccessors< CI, CM >::genvecP4 ( ObjectId< CI, CM trk,
double  m 
) const
inline

Definition at line 78 of file TrackHelpers.h.

78  {
80  }

◆ phi()

template<ContainerIdConcept CI = ContainerId::track, typename CM = ColumnarModeDefault>
double columnar::TrackHelpers::TrackMomentumAccessors< CI, CM >::phi ( ObjectId< CI, CM object,
double  m 
) const
inline

Definition at line 86 of file TrackHelpers.h.

86  {
87  return genvecP4 (object, m).phi(); }

◆ pt()

template<ContainerIdConcept CI = ContainerId::track, typename CM = ColumnarModeDefault>
double columnar::TrackHelpers::TrackMomentumAccessors< CI, CM >::pt ( ObjectId< CI, CM object,
double  m 
) const
inline

Definition at line 82 of file TrackHelpers.h.

82  {
83  return genvecP4 (object, m).pt(); }

Member Data Documentation

◆ m_phiAcc

template<ContainerIdConcept CI = ContainerId::track, typename CM = ColumnarModeDefault>
ColumnAccessor<CI,RetypeColumn<double,float>,CM> columnar::TrackHelpers::TrackMomentumAccessors< CI, CM >::m_phiAcc
private

Definition at line 67 of file TrackHelpers.h.

◆ m_qOverPAcc

template<ContainerIdConcept CI = ContainerId::track, typename CM = ColumnarModeDefault>
ColumnAccessor<CI,float,CM> columnar::TrackHelpers::TrackMomentumAccessors< CI, CM >::m_qOverPAcc
private

Definition at line 65 of file TrackHelpers.h.

◆ m_thetaAcc

template<ContainerIdConcept CI = ContainerId::track, typename CM = ColumnarModeDefault>
ColumnAccessor<CI,float,CM> columnar::TrackHelpers::TrackMomentumAccessors< CI, CM >::m_thetaAcc
private

Definition at line 66 of file TrackHelpers.h.


The documentation for this class was generated from the following file:
xAOD::TrackingDetails::genvecP4
GenVecFourMom_t genvecP4(float qOverP, float thetaT, float phiT, double m)
Definition: TrackingDetails.h:52
columnar::TrackHelpers::TrackMomentumAccessors::m_phiAcc
ColumnAccessor< CI, RetypeColumn< double, float >, CM > m_phiAcc
Definition: TrackHelpers.h:67
columnar::TrackHelpers::TrackMomentumAccessors::genvecP4
GenVecFourMom_t genvecP4(ObjectId< CI, CM > trk, double m) const
Definition: TrackHelpers.h:78
columnar::TrackHelpers::TrackMomentumAccessors::m_qOverPAcc
ColumnAccessor< CI, float, CM > m_qOverPAcc
Definition: TrackHelpers.h:65
columnar::TrackHelpers::TrackMomentumAccessors::m_thetaAcc
ColumnAccessor< CI, float, CM > m_thetaAcc
Definition: TrackHelpers.h:66
python.SystemOfUnits.m
float m
Definition: SystemOfUnits.py:106