11#ifndef FOURMOM_P4IMPLPXPYPZE_H
12#define FOURMOM_P4IMPLPXPYPZE_H
17#include "CLHEP/Vector/LorentzVector.h"
18#include "CLHEP/Units/SystemOfUnits.h"
59 const double pz,
const double e );
102 void setPx(
const double thePx );
105 void setPy(
const double thePy );
108 void setPz(
const double thePz );
111 void setE(
const double theE );
118 void set4Mom (
const CLHEP::HepLorentzVector & theHlv );
269 m_error = std::make_unique< ErrorType>( err, *
this);
I4Momentum is an abstract base class providing 4-momentum behavior.
virtual double pz() const =0
z component of momentum
virtual double px() const =0
x component of momentum
virtual double e() const =0
energy
virtual double py() const =0
y component of momentum
CLHEP::HepLorentzVector hlv() const
double e() const
get energy data member
std::unique_ptr< ErrorType > m_error
void setPz(const double thePz)
set Pz data member
void set4Mom(const I4Momentum &theI4Mom)
set all 4-mom from another I4Momentum reference
double py() const
get py data member
void setPy(const double thePy)
set Py data member
friend class P4ImplPxPyPzECnv_p1
P4ImplPxPyPzE()
Default constructor:
void setErrors(const ErrorMatrixPxPyPzE &err)
set the errors
FourMomentumError< P4ImplPxPyPzE > ErrorType
double px() const
{@ a la I4Momentum -like interface
P4ImplPxPyPzE & operator=(const P4ImplPxPyPzE &rhs)
Assignment operator:
void setE(const double theE)
set energy data member
I4Momentum::Kind kind() const
double pz() const
get pz data member
virtual ~P4ImplPxPyPzE()
Destructor:
void setPx(const double thePx)
set Px data member
virtual const I4MomentumError * errors() const