|
ATLAS Offline Software
|
Go to the documentation of this file.
11 #ifndef NAVFOURMOM_NAV4MOMWRAPPER_H
12 #define NAVFOURMOM_NAV4MOMWRAPPER_H
17 #include "CLHEP/Vector/LorentzVector.h"
29 template<
class Navigable_t,
69 const double p3,
const double p4 );
97 const std::any&
weight )
const;
166 CLHEP::HepLorentzVector
hlv()
const;
181 virtual void set4Mom (
const CLHEP::HepLorentzVector & theHlv ) ;
185 std::ostream&
dump( std::ostream&
out )
const;
213 template<
class Navigable_t,
class P4Momentum_t>
222 template<
class Navigable_t,
class P4Momentum_t>
234 template<
class Navigable_t,
class P4Momentum_t>
245 template<
class Navigable_t,
class P4Momentum_t>
254 template<
class Navigable_t,
class P4Momentum_t>
261 if (
this != &rhs ) {
262 INavigable4Momentum::operator=( rhs );
264 P4Momentum_t::operator=( rhs );
269 template<
class Navigable_t,
class P4Momentum_t>
281 template<
class Navigable_t,
class P4Momentum_t>
290 template<
class Navigable_t,
class P4Momentum_t>
299 template<
class Navigable_t,
class P4Momentum_t>
307 template<
class Navigable_t,
class P4Momentum_t>
316 template<
class Navigable_t,
class P4Momentum_t>
325 template<
class Navigable_t,
class P4Momentum_t>
334 template<
class Navigable_t,
class P4Momentum_t>
339 const std::any&
weight )
const
344 template<
class Navigable_t,
class P4Momentum_t>
352 template<
class Navigable_t,
class P4Momentum_t>
360 template<
class Navigable_t,
class P4Momentum_t>
368 template<
class Navigable_t,
class P4Momentum_t>
376 template<
class Navigable_t,
class P4Momentum_t>
384 template<
class Navigable_t,
class P4Momentum_t>
392 template<
class Navigable_t,
class P4Momentum_t>
400 template<
class Navigable_t,
class P4Momentum_t>
408 template<
class Navigable_t,
class P4Momentum_t>
416 template<
class Navigable_t,
class P4Momentum_t>
424 template<
class Navigable_t,
class P4Momentum_t>
432 template<
class Navigable_t,
class P4Momentum_t>
440 template<
class Navigable_t,
class P4Momentum_t>
448 template<
class Navigable_t,
class P4Momentum_t>
456 template<
class Navigable_t,
class P4Momentum_t>
464 template<
class Navigable_t,
class P4Momentum_t>
472 template<
class Navigable_t,
class P4Momentum_t>
480 template<
class Navigable_t,
class P4Momentum_t>
488 template<
class Navigable_t,
class P4Momentum_t>
496 template<
class Navigable_t,
class P4Momentum_t>
504 template<
class Navigable_t,
class P4Momentum_t>
512 template<
class Navigable_t,
class P4Momentum_t>
514 CLHEP::HepLorentzVector
520 template<
class Navigable_t,
class P4Momentum_t>
530 template<
class Navigable_t,
class P4Momentum_t>
538 template<
class Navigable_t,
class P4Momentum_t>
545 template<
class Navigable_t,
class P4Momentum_t>
555 template<
class Navigable_t,
class P4Momentum_t>
567 template<
class Navigable_t,
class P4Momentum_t>
576 template<
class Navigable_t,
class P4Momentum_t>
585 #endif //> NAVFOURMOM_NAV4MOMWRAPPER_H
double et() const
transverse energy defined to be e*sin(theta)
Nav4MomWrapper(const double p1, const double p2, const double p3, const double p4)
Constructor with parameters:
double py() const
y component of momentum
double cosTh() const
cosinus theta
double rapidity() const
rapidity
const momentum_type & momentumBase() const
access to underlying base type (I4Momentum-like)
momentum_type & momentumBase()
access to underlying base type (I4Momentum-like)
virtual double p() const
momentum magnitude
double m2() const
mass squared
double sinTh() const
sinus theta
virtual double e() const
get energy data member
double iPt() const
inverse of transverse momentum
virtual double py() const
get py data member
Nav4MomWrapper(const CLHEP::HepLorentzVector &hlv)
double pz() const
z component of momentum
double cosPhi() const
cosine phi
virtual double eta() const
pseudo rapidity
virtual const I4MomentumError * errors() const
Access to errors, if available; returns 0 if no errors.
void fillToken(INavigationToken &thisToken, const std::any &weight) const
Visitor handler including a relational parameter.
virtual const I4MomentumError * errors() const
Access to errors, if available; returns 0 if no errors.
CLHEP::HepLorentzVector hlv() const
CLHEP HepLorentzVector.
virtual void fillToken(INavigationToken &navToken) const
Visitor handler without relational parameter.
virtual double et() const
transverse energy defined to be e*sin(theta)
virtual double pz() const
get pz data member
navigable_type & navigableBase()
access to underlying base type (INavigable-like)
virtual double sinTh() const
sinus theta
std::ostream & dump(std::ostream &out) const
Print I4Momentum content.
double px() const
x component of momentum
Nav4MomWrapper(const P4Momentum_t &rhs)
virtual double p2() const
square of momentum magnitude
double pt() const
transverse momentum
virtual void set4Mom(const I4Momentum *const theI4Mom)
set 4Momentum (will throw exception if cannot be implemented)
virtual double m() const
mass
Nav4MomWrapper & operator=(const Nav4MomWrapper &rhs)
Assignment operator:
virtual double cosPhi() const
cosinus phi
virtual double pt() const
transverse momentum
double tanTh() const
tan theta
I4Momentum::Kind kind() const
makes the underlying type of the implementation available (P4XYZ)
double eta() const
pseudo rapidity
virtual double cosTh() const
cosinus theta
P4Momentum_t momentum_type
publish the type of the base class (ie: 'traits-itize' it)
NavWrapper< Navigable_t > navigable_type
publish the type of the base class (ie: 'traits-itize' it)
double sinPhi() const
sine phi
virtual void set4Mom(const I4Momentum &theI4Mom)
set 4Momentum (will throw exception if cannot be implemented)
Nav4MomWrapper(const Nav4MomWrapper &rhs)
Copy constructor:
virtual double rapidity() const
rapidity
Wrapper for Navigable implementation.
double phi() const
phi in [-pi,pi[
const navigable_type & navigableBase() const
access to underlying base type (INavigable-like)
virtual void set4Mom(const CLHEP::HepLorentzVector &theHlv)
set 4Momentum (will throw exception if cannot be implemented)
virtual double iPt() const
inverse of transverse momentum
Nav4MomWrapper(const I4Momentum *const rhs)
virtual double tanTh() const
tan theta
virtual CLHEP::HepLorentzVector hlv() const
CLHEP HepLorentzVector.
virtual double px() const
get px data member
void fillToken(INavigationToken &thisToken) const
virtual double cotTh() const
cottan theta
double cotTh() const
cottan theta
double p() const
momentum magnitude
virtual void set4Mom(const I4Momentum &theI4Mom)
set all 4-mom from another I4Momentum reference
Nav4MomWrapper()
Default constructor:
virtual double sinPhi() const
sinus phi
virtual I4Momentum::Kind kind() const
tells what kind of P4XYZT this is
virtual double phi() const
phi in [-pi,pi[
double p2() const
square of momentum magnitude
Nav4MomWrapper(const I4Momentum &rhs)
virtual double m2() const
mass squared
virtual std::ostream & dump(std::ostream &out) const
Print I4Momentum content.
virtual ~Nav4MomWrapper()
Destructor: