![]() |
ATLAS Offline Software
|
hub for various interface implementations More...
#include <ParticleImpl.h>
Public Types | |
| typedef INavigable_t | navigable_type |
| publish the type of the base class (ie: 'traits-itize' it) | |
| typedef I4Momentum_t | momentum_type |
| publish the type of the base class (ie: 'traits-itize' it) | |
| typedef IParticle_t | particle_type |
| publish the type of the base class (ie: 'traits-itize' it) | |
| typedef ParticleImpl< INavigable_t, I4Momentum_t, IParticle_t > | self_type |
| publish the type of the base class (ie: 'traits-itize' it) | |
| enum | Kind { P4EETAPHIM , P4IPTCOTTHPHIM , P4PTETAPHIM , P4PXPYPZE , UNKNOWN } |
Public Member Functions | |
| ParticleImpl () | |
| Default constructor. | |
| ParticleImpl (const ParticleImpl &rhs) | |
| Copy constructor. | |
| ParticleImpl & | operator= (const ParticleImpl &rhs) |
| Assignment operator. | |
| virtual | ~ParticleImpl () |
| Default constructor: | |
| const navigable_type & | navigableBase () const |
| access to underlying base type (INavigable-like) | |
| const momentum_type & | momentumBase () const |
| access to underlying base type (I4Momentum-like) | |
| const particle_type & | particleBase () const |
| access to underlying base type (IParticle-like) | |
| navigable_type & | navigableBase () |
| access to underlying base type (INavigable-like) | |
| momentum_type & | momentumBase () |
| access to underlying base type (I4Momentum-like) | |
| particle_type & | particleBase () |
| access to underlying base type (IParticle-like) | |
| virtual void | set4Mom (const I4Momentum &p4) |
| set 4Momentum (will throw exception if cannot be implemented) | |
| virtual void | set4Mom (const I4Momentum *const p4) |
| set 4Momentum (will throw exception if cannot be implemented) | |
| virtual void | set4Mom (const CLHEP::HepLorentzVector &hlv) |
| set 4Momentum (will throw exception if cannot be implemented) | |
| virtual void | set_dataType (ParticleDataType::DataType x) |
| virtual void | set_charge (ChargeType x) |
| virtual void | set_pdgId (int x) |
| virtual void | set_origin (const VxContainer *theContainer, int index) |
| virtual void | set_origin (const VxContainer *theContainer, const Trk::VxCandidate *vertex) |
| void | set_origin (const ElementLink< VxContainer > &origin) |
| virtual void | fillToken (INavigationToken &thisToken) const |
| virtual void | fillToken (INavigationToken &thisToken, const std::any &weight) const |
| AthenaBarCode_t | getAthenaBarCode () const |
| void | setAthenaBarCode (AthenaBarCode_t) |
| bool | hasSameAthenaBarCode (const IAthenaBarCode &) const |
| bool | hasSameAthenaBarCodeExceptVersion (const IAthenaBarCode &) const |
| AthenaBarCodeVersion_t | getVersion () const |
| void | newVersion () |
| void | setVersion (AthenaBarCodeVersion_t newversion) |
| virtual double | px () const |
| x component of momentum | |
| virtual double | py () const |
| y component of momentum | |
| virtual double | pz () const |
| z component of momentum | |
| virtual double | m () const |
| mass | |
| virtual double | m2 () const |
| mass squared | |
| virtual double | p () const |
| mass momentum magnitude | |
| virtual double | p2 () const |
| square of momentum magnitude | |
| virtual double | rapidity () const |
| rapidity | |
| virtual double | eta () const |
| pseudo rapidity | |
| virtual double | phi () const |
| phi in [-pi,pi[ | |
| virtual double | e () const |
| energy | |
| virtual double | et () const |
| transverse energy defined to be e*sin(theta) | |
| virtual double | pt () const |
| transverse momentum | |
| virtual double | iPt () const |
| inverse of transverse momentum | |
| virtual double | cosPhi () const |
| cosinus phi | |
| virtual double | sinPhi () const |
| sinus phi | |
| virtual double | tanTh () const |
| tan theta | |
| virtual double | cosTh () const |
| cosinus theta | |
| virtual double | sinTh () const |
| sinus theta | |
| virtual double | cotTh () const |
| cottan theta | |
| virtual CLHEP::HepLorentzVector | hlv () const |
| CLHEP HepLorentzVector. | |
| virtual const I4MomentumError * | errors () const |
| Access to errors, if available; returns 0 if no errors. | |
| virtual I4Momentum::Kind | kind () const |
| add Kind which tells what kind (P4XYZ) the underlying implementation has | |
| virtual std::ostream & | dump (std::ostream &out) const |
Print I4Momentum content. | |
| virtual ParticleDataType::DataType | dataType () const |
| Return enum indicating real data, fast, or full simulation Return Type has a DataType enum with the following values: {Data = 0, Full = 1, FastShower = 2, Fast = 3, True = 4}. | |
| virtual const Trk::RecVertex * | origin () const |
| Return a RecVertex corresponding to particle Origin. | |
| virtual const ElementLink< VxContainer > & | originLink () const |
| Return an ElementLink corresponding to particle's Origin. | |
| virtual bool | hasCharge () const |
| method to check if charge information is available | |
| virtual ChargeType | charge () const |
| returns charge as a typedef ChargeType currently Charge Type is a double for jets this may be changed to an int and ask jets to extend this interface | |
| virtual bool | hasPdgId () const |
| method to check if particle id information is available | |
| virtual int | pdgId () const |
| Return enum indicating particle id the enum file is available in Event/EventKernel/PdtPdg.h. | |
Static Public Attributes | |
| static const AthenaBarCode_t | UNDEFINEDBARCODE = (AthenaBarCode_t)(-1) |
| static const AthenaBarCode_t | UNDEFINEDVERSION = UNDEFINEDBARCODE |
Private Attributes | |
| INavigable_t | m_nav |
| The navigable part. | |
| I4Momentum_t | m_mom |
| The 4-momentum part. | |
| IParticle_t | m_part |
| The particle-id part. | |
hub for various interface implementations
Definition at line 38 of file ParticleImpl.h.
| typedef I4Momentum_t ParticleImpl< INavigable_t, I4Momentum_t, IParticle_t >::momentum_type |
publish the type of the base class (ie: 'traits-itize' it)
Definition at line 52 of file ParticleImpl.h.
| typedef INavigable_t ParticleImpl< INavigable_t, I4Momentum_t, IParticle_t >::navigable_type |
publish the type of the base class (ie: 'traits-itize' it)
Definition at line 48 of file ParticleImpl.h.
| typedef IParticle_t ParticleImpl< INavigable_t, I4Momentum_t, IParticle_t >::particle_type |
publish the type of the base class (ie: 'traits-itize' it)
Definition at line 56 of file ParticleImpl.h.
| typedef ParticleImpl<INavigable_t, I4Momentum_t, IParticle_t> ParticleImpl< INavigable_t, I4Momentum_t, IParticle_t >::self_type |
publish the type of the base class (ie: 'traits-itize' it)
Definition at line 62 of file ParticleImpl.h.
|
inherited |
| Enumerator | |
|---|---|
| P4EETAPHIM | |
| P4IPTCOTTHPHIM | |
| P4PTETAPHIM | |
| P4PXPYPZE | |
| UNKNOWN | |
Definition at line 33 of file I4Momentum.h.
|
inline |
Default constructor.
Inline methods:
Definition at line 325 of file ParticleImpl.h.
|
inline |
|
virtual |
|
inlinevirtual |
returns charge as a typedef ChargeType currently Charge Type is a double for jets this may be changed to an int and ask jets to extend this interface
Implements IParticle.
Definition at line 718 of file ParticleImpl.h.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Access to errors, if available; returns 0 if no errors.
Implements I4Momentum.
Reimplemented in egamma.
Definition at line 645 of file ParticleImpl.h.
|
inlinevirtual |
transverse energy defined to be e*sin(theta)
Implements I4Momentum.
Definition at line 544 of file ParticleImpl.h.
|
inlinevirtual |
|
inlinevirtual |
INavigable interface forwarding
Implements INavigable.
Reimplemented in Analysis::Muon, Analysis::TauJet, and egamma.
Definition at line 413 of file ParticleImpl.h.
|
inlinevirtual |
Implements INavigable.
Reimplemented in Analysis::Muon, Analysis::TauJet, and egamma.
Definition at line 423 of file ParticleImpl.h.
|
inlinevirtual |
IAthenaBarCode interface forwarding
Reimplemented from IAthenaBarCode.
Definition at line 753 of file ParticleImpl.h.
|
inlinevirtual |
Reimplemented from IAthenaBarCode.
Definition at line 794 of file ParticleImpl.h.
|
inlinevirtual |
method to check if charge information is available
Implements IParticle.
Definition at line 708 of file ParticleImpl.h.
|
inlinevirtual |
method to check if particle id information is available
Implements IParticle.
Definition at line 728 of file ParticleImpl.h.
|
inlinevirtual |
Reimplemented from IAthenaBarCode.
Definition at line 774 of file ParticleImpl.h.
|
inlinevirtual |
Reimplemented from IAthenaBarCode.
Definition at line 784 of file ParticleImpl.h.
|
inlinevirtual |
|
inlinevirtual |
inverse of transverse momentum
Implements I4Momentum.
Definition at line 564 of file ParticleImpl.h.
|
inlinevirtual |
add Kind which tells what kind (P4XYZ) the underlying implementation has
Implements I4Momentum.
Definition at line 655 of file ParticleImpl.h.
|
inlinevirtual |
|
inlinevirtual |
|
inline |
access to underlying base type (I4Momentum-like)
Definition at line 852 of file ParticleImpl.h.
|
inline |
access to underlying base type (I4Momentum-like)
Definition at line 393 of file ParticleImpl.h.
|
inline |
access to underlying base type (INavigable-like)
Definition at line 842 of file ParticleImpl.h.
|
inline |
access to underlying base type (INavigable-like)
Definition at line 383 of file ParticleImpl.h.
|
inlinevirtual |
Reimplemented from IAthenaBarCode.
Definition at line 804 of file ParticleImpl.h.
|
inline |
Assignment operator.
Definition at line 356 of file ParticleImpl.h.
|
inlinevirtual |
Return a RecVertex corresponding to particle Origin.
Implements IParticle.
Definition at line 688 of file ParticleImpl.h.
|
inlinevirtual |
Return an ElementLink corresponding to particle's Origin.
Implements IParticle.
Definition at line 698 of file ParticleImpl.h.
|
inlinevirtual |
|
inlinevirtual |
|
inline |
access to underlying base type (IParticle-like)
Definition at line 862 of file ParticleImpl.h.
|
inline |
access to underlying base type (IParticle-like)
Definition at line 403 of file ParticleImpl.h.
|
inlinevirtual |
Return enum indicating particle id the enum file is available in Event/EventKernel/PdtPdg.h.
Implements IParticle.
Definition at line 738 of file ParticleImpl.h.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
x component of momentum
I4Momentum interface forwarding
Implements I4Momentum.
Definition at line 434 of file ParticleImpl.h.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
set 4Momentum (will throw exception if cannot be implemented)
Implements I4Momentum.
Reimplemented in egamma, and TruthParticle.
Definition at line 896 of file ParticleImpl.h.
|
inlinevirtual |
set 4Momentum (will throw exception if cannot be implemented)
Implements I4Momentum.
Reimplemented in egamma, and TruthParticle.
Definition at line 875 of file ParticleImpl.h.
|
inlinevirtual |
set 4Momentum (will throw exception if cannot be implemented)
Implements I4Momentum.
Reimplemented in egamma, and TruthParticle.
Definition at line 885 of file ParticleImpl.h.
|
inlinevirtual |
Definition at line 916 of file ParticleImpl.h.
|
inlinevirtual |
Definition at line 906 of file ParticleImpl.h.
|
inline |
Definition at line 958 of file ParticleImpl.h.
|
inlinevirtual |
Definition at line 947 of file ParticleImpl.h.
|
inlinevirtual |
Definition at line 936 of file ParticleImpl.h.
|
inlinevirtual |
Definition at line 926 of file ParticleImpl.h.
|
inlinevirtual |
Reimplemented from IAthenaBarCode.
Definition at line 763 of file ParticleImpl.h.
|
inlinevirtual |
Reimplemented from IAthenaBarCode.
Definition at line 814 of file ParticleImpl.h.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
private |
The 4-momentum part.
Definition at line 310 of file ParticleImpl.h.
|
private |
The navigable part.
Definition at line 307 of file ParticleImpl.h.
|
private |
The particle-id part.
Definition at line 313 of file ParticleImpl.h.
|
staticinherited |
Definition at line 52 of file AthenaKernel/AthenaKernel/IAthenaBarCode.h.
|
staticinherited |
Definition at line 53 of file AthenaKernel/AthenaKernel/IAthenaBarCode.h.