7#ifndef FOURMOM_P4IMPLIPTCOTTHPHIM_H
8#define FOURMOM_P4IMPLIPTCOTTHPHIM_H
14#include "CLHEP/Vector/LorentzVector.h"
15#include "CLHEP/Units/SystemOfUnits.h"
61 const double phi,
const double m );
99 virtual void setIPt(
const double theIPt );
101 virtual void setCotTh(
const double theCotTh );
103 virtual void setPhi(
const double thePhi );
105 virtual void setM(
const double theM );
115 virtual void set4Mom(
const CLHEP::HepLorentzVector & theHlv );
279 m_error = std::make_unique< ErrorType>(err, *
this);
Scalar perp() const
perp method - perpendicular length
I4Momentum is an abstract base class providing 4-momentum behavior.
virtual double cotTh() const =0
cottan theta
virtual double m() const =0
mass
virtual double phi() const =0
phi in [-pi,pi[
virtual double iPt() const =0
inverse of transverse momentum
P4BaseIPtCotThPhiM is a base class for classes with 4-momentum behavior, for which 1/Pt,...
CLHEP::HepLorentzVector hlv() const
virtual void set4Mom(const I4Momentum &theI4Mom)
set all 4-mom from another I4Momentum reference
virtual void setPhi(const double thePhi)
set phi data member
friend class P4ImplIPtCotThPhiMCnv_p1
virtual void setCotTh(const double theCotTh)
set cot(theta) data member
virtual const I4MomentumError * errors() const
virtual ~P4ImplIPtCotThPhiM()
virtual destructor needed by Pool
double m() const
{@ a la I4Momentum -like interface
std::unique_ptr< ErrorType > m_error
error matrix pointer
P4ImplIPtCotThPhiM()
Default constructor:
P4ImplIPtCotThPhiM & operator=(const P4ImplIPtCotThPhiM &rhs)
Assignment operator.
void setErrors(const ErrorMatrixPtCotThPhiM &err)
set the errors
FourMomentumError< P4ImplIPtCotThPhiM > ErrorType
virtual void setM(const double theM)
set m data member
I4Momentum::Kind kind() const
virtual void setIPt(const double theIPt)
set inverse pT data member