ATLAS Offline Software
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
FourMomentumError< FourMom > Class Template Reference

#include <FourMomentumError.h>

Inheritance diagram for FourMomentumError< FourMom >:
Collaboration diagram for FourMomentumError< FourMom >:

Public Member Functions

 FourMomentumError (const ErrorMatrixPxPyPzE &, const FourMom &)
 
 FourMomentumError (const ErrorMatrixEEtaPhiM &, const FourMom &)
 
 FourMomentumError (const ErrorMatrixPtEtaPhiM &, const FourMom &)
 
 FourMomentumError (const ErrorMatrixPtCotThPhiM &, const FourMom &)
 
 FourMomentumError (const CLHEP::HepSymMatrix &, ParamType, const FourMom &)
 
 FourMomentumError (const FourMomentumError &other)
 
FourMomentumErroroperator= (const FourMomentumError &other)
 
virtual const ErrorMatrixPxPyPzEpxPyPzEMatrix () const override
 Access to PxPyPzE error matrix, can return 0 if errors not defined. More...
 
virtual const ErrorMatrixEEtaPhiMeEtaPhiMMatrix () const override
 Access to EEtaPhiM error matrix, can return 0 if errors not defined. More...
 
virtual const ErrorMatrixPtEtaPhiMptEtaPhiMMatrix () const override
 Access to PtEtaPhiM error matrix, can return 0 if errors not defined. More...
 
virtual const ErrorMatrixPtCotThPhiMptCotThPhiMMatrix () const override
 Access to PtCotThPhiM error matrix, can return 0 if errors not defined. More...
 
virtual double pxError () const override
 The following methods correspond 1-to-1 to the I4Momentum methods, and provide the errors on the corresponding quantities. More...
 
virtual double pyError () const override
 
virtual double pzError () const override
 
virtual double mError () const override
 
virtual double m2Error () const override
 
virtual double pError () const override
 
virtual double p2Error () const override
 
virtual double etaError () const override
 
virtual double rapidityError () const override
 
virtual double phiError () const override
 
virtual double eError () const override
 
virtual double etError () const override
 
virtual double ptError () const override
 
virtual double iPtError () const override
 
virtual double cosPhiError () const override
 
virtual double sinPhiError () const override
 
virtual double cosThError () const override
 
virtual double sinThError () const override
 
virtual double cotThError () const override
 
virtual double tanThError () const override
 

Private Types

enum  ParamType { PxPyPzE, EEtaPhiM, PtEtaPhiM, PtCotThPhiM }
 

Private Member Functions

ParamType originalType () const
 
bool computePxPyPzEMatrix () const
 
bool computeEEtaPhiMMatrix () const
 
bool computePtEtaPhiMMatrix () const
 
double sqr (double x) const
 

Private Attributes

const FourMom & m_p4
 
CxxUtils::CachedUniquePtr< ErrorMatrixPxPyPzEm_PxPyPzE
 
CxxUtils::CachedUniquePtr< ErrorMatrixEEtaPhiMm_EEtaPhiM
 
CxxUtils::CachedUniquePtr< ErrorMatrixPtEtaPhiMm_PtEtaPhiM
 
CxxUtils::CachedUniquePtr< ErrorMatrixPtCotThPhiMm_PtCotThPhiM
 
ParamType m_originalType
 

Detailed Description

template<class FourMom>
class FourMomentumError< FourMom >

Definition at line 13 of file FourMomentumError.h.

Member Enumeration Documentation

◆ ParamType

template<class FourMom >
enum FourMomentumError::ParamType
private
Enumerator
PxPyPzE 
EEtaPhiM 
PtEtaPhiM 
PtCotThPhiM 

Definition at line 16 of file FourMomentumError.h.

Constructor & Destructor Documentation

◆ FourMomentumError() [1/6]

template<class FourMom >
FourMomentumError< FourMom >::FourMomentumError ( const ErrorMatrixPxPyPzE ,
const FourMom &   
)

◆ FourMomentumError() [2/6]

template<class FourMom >
FourMomentumError< FourMom >::FourMomentumError ( const ErrorMatrixEEtaPhiM ,
const FourMom &   
)

◆ FourMomentumError() [3/6]

template<class FourMom >
FourMomentumError< FourMom >::FourMomentumError ( const ErrorMatrixPtEtaPhiM ,
const FourMom &   
)

◆ FourMomentumError() [4/6]

template<class FourMom >
FourMomentumError< FourMom >::FourMomentumError ( const ErrorMatrixPtCotThPhiM ,
const FourMom &   
)

◆ FourMomentumError() [5/6]

template<class FourMom >
FourMomentumError< FourMom >::FourMomentumError ( const CLHEP::HepSymMatrix &  ,
ParamType  ,
const FourMom &   
)

◆ FourMomentumError() [6/6]

template<class FourMom >
FourMomentumError< FourMom >::FourMomentumError ( const FourMomentumError< FourMom > &  other)

Member Function Documentation

◆ computeEEtaPhiMMatrix()

template<class FourMom >
bool FourMomentumError< FourMom >::computeEEtaPhiMMatrix ( ) const
private

◆ computePtEtaPhiMMatrix()

template<class FourMom >
bool FourMomentumError< FourMom >::computePtEtaPhiMMatrix ( ) const
private

◆ computePxPyPzEMatrix()

template<class FourMom >
bool FourMomentumError< FourMom >::computePxPyPzEMatrix ( ) const
private

◆ cosPhiError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::cosPhiError ( ) const
overridevirtual

Implements I4MomentumError.

◆ cosThError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::cosThError ( ) const
overridevirtual

Implements I4MomentumError.

◆ cotThError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::cotThError ( ) const
overridevirtual

Implements I4MomentumError.

◆ eError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::eError ( ) const
overridevirtual

Implements I4MomentumError.

◆ eEtaPhiMMatrix()

template<class FourMom >
virtual const ErrorMatrixEEtaPhiM* FourMomentumError< FourMom >::eEtaPhiMMatrix ( ) const
overridevirtual

Access to EEtaPhiM error matrix, can return 0 if errors not defined.

Implements I4MomentumError.

◆ etaError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::etaError ( ) const
overridevirtual

Implements I4MomentumError.

◆ etError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::etError ( ) const
overridevirtual

Implements I4MomentumError.

◆ iPtError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::iPtError ( ) const
overridevirtual

Implements I4MomentumError.

◆ m2Error()

template<class FourMom >
virtual double FourMomentumError< FourMom >::m2Error ( ) const
overridevirtual

Implements I4MomentumError.

◆ mError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::mError ( ) const
overridevirtual

Implements I4MomentumError.

◆ operator=()

template<class FourMom >
FourMomentumError& FourMomentumError< FourMom >::operator= ( const FourMomentumError< FourMom > &  other)

◆ originalType()

template<class FourMom >
ParamType FourMomentumError< FourMom >::originalType ( ) const
inlineprivate

Definition at line 66 of file FourMomentumError.h.

66 {return m_originalType;}

◆ p2Error()

template<class FourMom >
virtual double FourMomentumError< FourMom >::p2Error ( ) const
overridevirtual

Implements I4MomentumError.

◆ pError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::pError ( ) const
overridevirtual

Implements I4MomentumError.

◆ phiError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::phiError ( ) const
overridevirtual

Implements I4MomentumError.

◆ ptCotThPhiMMatrix()

template<class FourMom >
virtual const ErrorMatrixPtCotThPhiM* FourMomentumError< FourMom >::ptCotThPhiMMatrix ( ) const
overridevirtual

Access to PtCotThPhiM error matrix, can return 0 if errors not defined.

Implements I4MomentumError.

◆ ptError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::ptError ( ) const
overridevirtual

Implements I4MomentumError.

◆ ptEtaPhiMMatrix()

template<class FourMom >
virtual const ErrorMatrixPtEtaPhiM* FourMomentumError< FourMom >::ptEtaPhiMMatrix ( ) const
overridevirtual

Access to PtEtaPhiM error matrix, can return 0 if errors not defined.

Implements I4MomentumError.

◆ pxError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::pxError ( ) const
overridevirtual

The following methods correspond 1-to-1 to the I4Momentum methods, and provide the errors on the corresponding quantities.

If errors are not defined, the returned values are zero.

Implements I4MomentumError.

◆ pxPyPzEMatrix()

template<class FourMom >
virtual const ErrorMatrixPxPyPzE* FourMomentumError< FourMom >::pxPyPzEMatrix ( ) const
overridevirtual

Access to PxPyPzE error matrix, can return 0 if errors not defined.

Implements I4MomentumError.

◆ pyError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::pyError ( ) const
overridevirtual

Implements I4MomentumError.

◆ pzError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::pzError ( ) const
overridevirtual

Implements I4MomentumError.

◆ rapidityError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::rapidityError ( ) const
overridevirtual

Implements I4MomentumError.

◆ sinPhiError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::sinPhiError ( ) const
overridevirtual

Implements I4MomentumError.

◆ sinThError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::sinThError ( ) const
overridevirtual

Implements I4MomentumError.

◆ sqr()

template<class FourMom >
double FourMomentumError< FourMom >::sqr ( double  x) const
inlineprivate

Definition at line 71 of file FourMomentumError.h.

71 {return x*x;}

◆ tanThError()

template<class FourMom >
virtual double FourMomentumError< FourMom >::tanThError ( ) const
overridevirtual

Implements I4MomentumError.

Member Data Documentation

◆ m_EEtaPhiM

template<class FourMom >
CxxUtils::CachedUniquePtr<ErrorMatrixEEtaPhiM> FourMomentumError< FourMom >::m_EEtaPhiM
private

Definition at line 60 of file FourMomentumError.h.

◆ m_originalType

template<class FourMom >
ParamType FourMomentumError< FourMom >::m_originalType
private

Definition at line 64 of file FourMomentumError.h.

◆ m_p4

template<class FourMom >
const FourMom& FourMomentumError< FourMom >::m_p4
private

Definition at line 58 of file FourMomentumError.h.

◆ m_PtCotThPhiM

template<class FourMom >
CxxUtils::CachedUniquePtr<ErrorMatrixPtCotThPhiM> FourMomentumError< FourMom >::m_PtCotThPhiM
private

Definition at line 62 of file FourMomentumError.h.

◆ m_PtEtaPhiM

template<class FourMom >
CxxUtils::CachedUniquePtr<ErrorMatrixPtEtaPhiM> FourMomentumError< FourMom >::m_PtEtaPhiM
private

Definition at line 61 of file FourMomentumError.h.

◆ m_PxPyPzE

template<class FourMom >
CxxUtils::CachedUniquePtr<ErrorMatrixPxPyPzE> FourMomentumError< FourMom >::m_PxPyPzE
private

Definition at line 59 of file FourMomentumError.h.


The documentation for this class was generated from the following file:
FourMomentumError::EEtaPhiM
@ EEtaPhiM
Definition: FourMomentumError.h:16
FourMomentumError::PtEtaPhiM
@ PtEtaPhiM
Definition: FourMomentumError.h:16
x
#define x
FourMomentumError::PxPyPzE
@ PxPyPzE
Definition: FourMomentumError.h:16
FourMomentumError::PtCotThPhiM
@ PtCotThPhiM
Definition: FourMomentumError.h:16
FourMomentumError::m_originalType
ParamType m_originalType
Definition: FourMomentumError.h:64