ATLAS Offline Software
Loading...
Searching...
No Matches
columnar::MetHelpers::InputMomentumAccessors< CI, CM > Struct Template Referencefinal

a class that provides all the accessors needed to access object momentum variables More...

#include <MetInput.h>

Collaboration diagram for columnar::MetHelpers::InputMomentumAccessors< CI, CM >:

Public Member Functions

 InputMomentumAccessors (ColumnarTool< CM > &columnarBase)
 InputMomentumAccessors (ColumnarTool< CM > &columnarBase, const std::string &prefix)
float px (ObjectId< CI, CM > object) const
float py (ObjectId< CI, CM > object) const
xAOD::JetFourMom_t jetP4 (ObjectId< CI, CM > jet) const

Public Attributes

ColumnAccessor< CI, RetypeColumn< double, float >, CM > pt
ColumnAccessor< CI, RetypeColumn< double, float >, CM > eta
ColumnAccessor< CI, RetypeColumn< double, float >, CM > phi
ColumnAccessor< CI, RetypeColumn< double, float >, CM > m

Detailed Description

template<ContainerIdConcept CI = ContainerId::particle, typename CM = ColumnarModeDefault>
struct columnar::MetHelpers::InputMomentumAccessors< CI, CM >

a class that provides all the accessors needed to access object momentum variables

For columnar code we don't have the same momentum support as for xAOD code, mostly because most tools (so far) only need to read individual momentum members that are taken straight from disk. maybe at some point there will be more generic momentum support, but with MET being the only user (so far) it is a specialized helper for the MET tools.

Definition at line 32 of file MetInput.h.

Constructor & Destructor Documentation

◆ InputMomentumAccessors() [1/2]

template<ContainerIdConcept CI = ContainerId::particle, typename CM = ColumnarModeDefault>
columnar::MetHelpers::InputMomentumAccessors< CI, CM >::InputMomentumAccessors ( ColumnarTool< CM > & columnarBase)
inline

Definition at line 34 of file MetInput.h.

35 : pt (columnarBase, "pt"),
36 eta (columnarBase, "eta"),
37 phi (columnarBase, "phi"),
38 m (columnarBase, "m")
39 {}
a class that provides all the accessors needed to access object momentum variables
Definition MetInput.h:33
ColumnAccessor< CI, RetypeColumn< double, float >, CM > pt
Definition MetInput.h:48
ColumnAccessor< CI, RetypeColumn< double, float >, CM > phi
Definition MetInput.h:50
ColumnAccessor< CI, RetypeColumn< double, float >, CM > m
Definition MetInput.h:51
ColumnAccessor< CI, RetypeColumn< double, float >, CM > eta
Definition MetInput.h:49

◆ InputMomentumAccessors() [2/2]

template<ContainerIdConcept CI = ContainerId::particle, typename CM = ColumnarModeDefault>
columnar::MetHelpers::InputMomentumAccessors< CI, CM >::InputMomentumAccessors ( ColumnarTool< CM > & columnarBase,
const std::string & prefix )
inline

Definition at line 41 of file MetInput.h.

42 : pt (columnarBase, prefix + "_pt"),
43 eta (columnarBase, prefix + "_eta"),
44 phi (columnarBase, prefix + "_phi"),
45 m (columnarBase, prefix + "_m")
46 {}

Member Function Documentation

◆ jetP4()

template<ContainerIdConcept CI = ContainerId::particle, typename CM = ColumnarModeDefault>
xAOD::JetFourMom_t columnar::MetHelpers::InputMomentumAccessors< CI, CM >::jetP4 ( ObjectId< CI, CM > jet) const
inlinenodiscard

Definition at line 63 of file MetInput.h.

64 {
66 }
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > JetFourMom_t
Base 4 Momentum type for Jet.
Definition JetTypes.h:17

◆ px()

template<ContainerIdConcept CI = ContainerId::particle, typename CM = ColumnarModeDefault>
float columnar::MetHelpers::InputMomentumAccessors< CI, CM >::px ( ObjectId< CI, CM > object) const
inlinenodiscard

Definition at line 58 of file MetInput.h.

58 {
59 return pt(object) * std::cos(phi(object));}

◆ py()

template<ContainerIdConcept CI = ContainerId::particle, typename CM = ColumnarModeDefault>
float columnar::MetHelpers::InputMomentumAccessors< CI, CM >::py ( ObjectId< CI, CM > object) const
inlinenodiscard

Definition at line 60 of file MetInput.h.

60 {
61 return pt(object) * std::sin(phi(object));}

Member Data Documentation

◆ eta

template<ContainerIdConcept CI = ContainerId::particle, typename CM = ColumnarModeDefault>
ColumnAccessor<CI,RetypeColumn<double,float>,CM> columnar::MetHelpers::InputMomentumAccessors< CI, CM >::eta

Definition at line 49 of file MetInput.h.

◆ m

template<ContainerIdConcept CI = ContainerId::particle, typename CM = ColumnarModeDefault>
ColumnAccessor<CI,RetypeColumn<double,float>,CM> columnar::MetHelpers::InputMomentumAccessors< CI, CM >::m

Definition at line 51 of file MetInput.h.

◆ phi

template<ContainerIdConcept CI = ContainerId::particle, typename CM = ColumnarModeDefault>
ColumnAccessor<CI,RetypeColumn<double,float>,CM> columnar::MetHelpers::InputMomentumAccessors< CI, CM >::phi

Definition at line 50 of file MetInput.h.

◆ pt

template<ContainerIdConcept CI = ContainerId::particle, typename CM = ColumnarModeDefault>
ColumnAccessor<CI,RetypeColumn<double,float>,CM> columnar::MetHelpers::InputMomentumAccessors< CI, CM >::pt

Definition at line 48 of file MetInput.h.


The documentation for this struct was generated from the following file: