ATLAS Offline Software
|
#include <ParticleSigStateImpl.h>
Public Types | |
typedef INavigable_t | navigable_type |
publish the type of the base class (ie: 'traits-itize' it) More... | |
typedef I4Momentum_t | momentum_type |
publish the type of the base class (ie: 'traits-itize' it) More... | |
typedef IParticle_t | particle_type |
publish the type of the base class (ie: 'traits-itize' it) More... | |
typedef ParticleSigStateImpl< INavigable_t, I4Momentum_t, IParticle_t > | self_type |
publish the type of the base class (ie: 'traits-itize' it) More... | |
typedef P4SignalState::State | state_t |
enum | Kind { P4EETAPHIM, P4IPTCOTTHPHIM, P4PTETAPHIM, P4PXPYPZE, UNKNOWN } |
Public Member Functions | |
ParticleSigStateImpl (int nStates=1, state_t defaultState=state_t(0)) | |
Default constructor. More... | |
ParticleSigStateImpl (const ParticleSigStateImpl &rhs) | |
Copy constructor. More... | |
ParticleSigStateImpl & | operator= (const ParticleSigStateImpl &rhs) |
Assignment operator. More... | |
virtual | ~ParticleSigStateImpl () |
Default destructor: More... | |
const navigable_type & | navigableBase () const |
access to underlying base type (INavigable-like) More... | |
const momentum_type & | momentumBase (state_t s) const |
access to underlying base type (I4Momentum-like) More... | |
const momentum_type & | momentumBase () const |
const particle_type & | particleBase () const |
access to underlying base type (IParticle-like) More... | |
navigable_type & | navigableBase () |
access to underlying base type (INavigable-like) More... | |
momentum_type & | momentumBase (state_t s) |
access to underlying base type (I4Momentum-like) More... | |
momentum_type & | momentumBase () |
particle_type & | particleBase () |
access to underlying base type (IParticle-like) More... | |
virtual void | set4Mom (const I4Momentum &p4) |
set 4Momentum (will throw exception if cannot be implemented) More... | |
virtual void | set4Mom (const I4Momentum *const p4) |
set 4Momentum (will throw exception if cannot be implemented) More... | |
virtual void | set4Mom (const CLHEP::HepLorentzVector &hlv) |
set 4Momentum (will throw exception if cannot be implemented) More... | |
virtual void | set4Mom (const I4Momentum &p4, state_t s) |
virtual void | set4Mom (const I4Momentum *const p4, state_t s) |
virtual void | set4Mom (const CLHEP::HepLorentzVector &hlv, state_t s) |
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) |
virtual void | set_origin (const ElementLink< VxContainer > &origin) |
virtual state_t | signalState () const |
Retrieve current signal state. More... | |
virtual bool | hasSignalState (state_t s) const |
check if signal state exists for current implementation More... | |
virtual bool | isAtSignalState (state_t s) const |
check if we are at the passed state More... | |
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 |
We re-define here extra class routines that will allow direct access to signal state kinematics without changing the current state. More... | |
virtual double | px (state_t s) const |
virtual double | py () const |
y component of momentum More... | |
virtual double | py (state_t s) const |
virtual double | pz () const |
z component of momentum More... | |
virtual double | pz (state_t s) const |
virtual double | m () const |
mass More... | |
virtual double | m (state_t s) const |
virtual double | m2 () const |
mass squared More... | |
virtual double | m2 (state_t s) const |
virtual double | p () const |
mass momentum magnitude More... | |
virtual double | p (state_t s) const |
virtual double | p2 () const |
square of momentum magnitude More... | |
virtual double | p2 (state_t s) const |
virtual double | rapidity () const |
rapidity More... | |
virtual double | rapidity (state_t s) const |
virtual double | eta () const |
pseudo rapidity More... | |
virtual double | eta (state_t s) const |
virtual double | phi () const |
phi in [-pi,pi[ More... | |
virtual double | phi (state_t s) const |
virtual double | e () const |
energy More... | |
virtual double | e (state_t s) const |
virtual double | et () const |
transverse energy defined to be e*sin(theta) More... | |
virtual double | et (state_t s) const |
virtual double | pt () const |
transverse momentum More... | |
virtual double | pt (state_t s) const |
virtual double | iPt () const |
inverse of transverse momentum More... | |
virtual double | iPt (state_t s) const |
virtual double | cosPhi () const |
cosinus phi More... | |
virtual double | cosPhi (state_t s) const |
virtual double | sinPhi () const |
sinus phi More... | |
virtual double | sinPhi (state_t s) const |
virtual double | tanTh () const |
tan theta More... | |
virtual double | tanTh (state_t s) const |
virtual double | cosTh () const |
cosinus theta More... | |
virtual double | cosTh (state_t s) const |
virtual double | sinTh () const |
sinus theta More... | |
virtual double | sinTh (state_t s) const |
virtual double | cotTh () const |
cottan theta More... | |
virtual double | cotTh (state_t s) const |
virtual CLHEP::HepLorentzVector | hlv () const |
CLHEP HepLorentzVector. More... | |
virtual CLHEP::HepLorentzVector | hlv (state_t s) const |
obtain the CLHEP HepLorentzVector More... | |
virtual const I4MomentumError * | errors () const |
Access to errors, if available; returns 0 if no errors. More... | |
virtual const I4MomentumError * | errors (state_t s) const |
virtual I4Momentum::Kind | kind () const |
add Kind which tells what kind (P4XYZ) the underlying implementation has More... | |
virtual std::ostream & | dump (std::ostream &out) const |
Print I4Momentum content. More... | |
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} More... | |
virtual const Trk::RecVertex * | origin () const |
Return a RecVertex corresponding to particle Origin More... | |
virtual const ElementLink< VxContainer > & | originLink () const |
Return an ElementLink corresponding to particle's Origin. More... | |
virtual bool | hasCharge () const |
method to check if charge information is available More... | |
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 More... | |
virtual bool | hasPdgId () const |
method to check if particle id information is available More... | |
virtual int | pdgId () const |
Return particle id. More... | |
Static Public Attributes | |
static const AthenaBarCode_t | UNDEFINEDBARCODE = (AthenaBarCode_t)(-1) |
static const AthenaBarCode_t | UNDEFINEDVERSION = UNDEFINEDBARCODE |
Protected Member Functions | |
virtual bool | setSignalState (state_t s) |
set the current signal state More... | |
virtual void | resetSignalState () |
reset the signal state More... | |
std::vector< I4Momentum_t > & | momentumVector () |
access the vector of momentum More... | |
int | nStates () |
access the number of state More... | |
void | setNStates (int n) |
Private Attributes | |
INavigable_t | m_nav |
The navigable part. More... | |
std::vector< I4Momentum_t > | m_mom |
The 4-momentum part Eventually, perhaps we can use a set since not all intermediate Signal States will be used by every object. More... | |
IParticle_t | m_part |
The particle-id part. More... | |
int | m_nStates |
Number of Signal States. More... | |
state_t | m_currentState |
Current Signal State. More... | |
hub for various interface implementations
Definition at line 41 of file ParticleSigStateImpl.h.
typedef I4Momentum_t ParticleSigStateImpl< INavigable_t, I4Momentum_t, IParticle_t >::momentum_type |
publish the type of the base class (ie: 'traits-itize' it)
Definition at line 55 of file ParticleSigStateImpl.h.
typedef INavigable_t ParticleSigStateImpl< INavigable_t, I4Momentum_t, IParticle_t >::navigable_type |
publish the type of the base class (ie: 'traits-itize' it)
Definition at line 51 of file ParticleSigStateImpl.h.
typedef IParticle_t ParticleSigStateImpl< INavigable_t, I4Momentum_t, IParticle_t >::particle_type |
publish the type of the base class (ie: 'traits-itize' it)
Definition at line 59 of file ParticleSigStateImpl.h.
typedef ParticleSigStateImpl<INavigable_t, I4Momentum_t, IParticle_t> ParticleSigStateImpl< INavigable_t, I4Momentum_t, IParticle_t >::self_type |
publish the type of the base class (ie: 'traits-itize' it)
Definition at line 65 of file ParticleSigStateImpl.h.
typedef P4SignalState::State ParticleSigStateImpl< INavigable_t, I4Momentum_t, IParticle_t >::state_t |
Definition at line 67 of file ParticleSigStateImpl.h.
|
inherited |
Enumerator | |
---|---|
P4EETAPHIM | |
P4IPTCOTTHPHIM | |
P4PTETAPHIM | |
P4PXPYPZE | |
UNKNOWN |
Definition at line 33 of file I4Momentum.h.
|
inline |
|
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 899 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
Definition at line 606 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
Definition at line 630 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
Definition at line 646 of file ParticleSigStateImpl.h.
|
inlinevirtual |
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}
IParticle interface forwarding
Implements IParticle.
Definition at line 867 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Print I4Momentum
content.
Implements I4Momentum.
Definition at line 856 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
Definition at line 574 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Access to errors, if available; returns 0 if no errors.
Implements I4Momentum.
Definition at line 840 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 663 of file ParticleSigStateImpl.h.
|
inlinevirtual |
transverse energy defined to be e*sin(theta)
Implements I4Momentum.
Definition at line 759 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 582 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
Definition at line 558 of file ParticleSigStateImpl.h.
|
inlinevirtual |
INavigable
interface forwarding
Implements INavigable.
Reimplemented in Jet.
Definition at line 477 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
IAthenaBarCode
interface forwarding
Reimplemented from IAthenaBarCode.
Definition at line 928 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Reimplemented from IAthenaBarCode.
Definition at line 961 of file ParticleSigStateImpl.h.
|
inlinevirtual |
method to check if charge information is available
Implements IParticle.
Definition at line 891 of file ParticleSigStateImpl.h.
|
inlinevirtual |
method to check if particle id information is available
Implements IParticle.
Definition at line 907 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Reimplemented from IAthenaBarCode.
Definition at line 945 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Reimplemented from IAthenaBarCode.
Definition at line 953 of file ParticleSigStateImpl.h.
|
inlinevirtual |
check if signal state exists for current implementation
Implements ISignalState.
Definition at line 1171 of file ParticleSigStateImpl.h.
|
inlinevirtual |
CLHEP HepLorentzVector.
Implements I4Momentum.
Definition at line 832 of file ParticleSigStateImpl.h.
|
inlinevirtual |
obtain the CLHEP HepLorentzVector
Implements ISignalState.
Definition at line 655 of file ParticleSigStateImpl.h.
|
inlinevirtual |
inverse of transverse momentum
Implements I4Momentum.
Definition at line 775 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 598 of file ParticleSigStateImpl.h.
|
inlinevirtual |
check if we are at the passed state
Implements ISignalState.
Definition at line 1183 of file ParticleSigStateImpl.h.
|
inlinevirtual |
add Kind which tells what kind (P4XYZ) the underlying implementation has
Implements I4Momentum.
Definition at line 848 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
Definition at line 518 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
Definition at line 526 of file ParticleSigStateImpl.h.
|
inline |
Definition at line 1012 of file ParticleSigStateImpl.h.
|
inline |
Definition at line 458 of file ParticleSigStateImpl.h.
|
inline |
access to underlying base type (I4Momentum-like)
Definition at line 1001 of file ParticleSigStateImpl.h.
|
inline |
access to underlying base type (I4Momentum-like)
Definition at line 447 of file ParticleSigStateImpl.h.
|
inlineprotected |
|
inline |
access to underlying base type (INavigable-like)
Definition at line 993 of file ParticleSigStateImpl.h.
|
inline |
access to underlying base type (INavigable-like)
Definition at line 439 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Reimplemented from IAthenaBarCode.
Definition at line 969 of file ParticleSigStateImpl.h.
|
inlineprotected |
|
inline |
|
inlinevirtual |
Return a RecVertex corresponding to particle Origin
Implements IParticle.
Definition at line 875 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Return an ElementLink corresponding to particle's Origin.
Implements IParticle.
Definition at line 883 of file ParticleSigStateImpl.h.
|
inlinevirtual |
mass momentum magnitude
Implements I4Momentum.
Definition at line 711 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 534 of file ParticleSigStateImpl.h.
|
inlinevirtual |
square of momentum magnitude
Implements I4Momentum.
Definition at line 719 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 542 of file ParticleSigStateImpl.h.
|
inline |
access to underlying base type (IParticle-like)
Definition at line 1023 of file ParticleSigStateImpl.h.
|
inline |
access to underlying base type (IParticle-like)
Definition at line 469 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Definition at line 566 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
Definition at line 590 of file ParticleSigStateImpl.h.
|
inlinevirtual |
We re-define here extra class routines that will allow direct access to signal state kinematics without changing the current state.
I4Momentum interface forwarding x component of momentum
Implements I4Momentum.
Definition at line 671 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 494 of file ParticleSigStateImpl.h.
|
inlinevirtual |
y component of momentum
Implements I4Momentum.
Definition at line 679 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 502 of file ParticleSigStateImpl.h.
|
inlinevirtual |
z component of momentum
Implements I4Momentum.
Definition at line 687 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 510 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
Definition at line 550 of file ParticleSigStateImpl.h.
|
inlineprotectedvirtual |
reset the signal state
Implements ISignalState.
Definition at line 1191 of file ParticleSigStateImpl.h.
|
inlinevirtual |
set 4Momentum (will throw exception if cannot be implemented)
Implements I4Momentum.
Definition at line 1076 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 1051 of file ParticleSigStateImpl.h.
|
inlinevirtual |
set 4Momentum (will throw exception if cannot be implemented)
Implements I4Momentum.
Definition at line 1059 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 1034 of file ParticleSigStateImpl.h.
|
inlinevirtual |
set 4Momentum (will throw exception if cannot be implemented)
Implements I4Momentum.
Definition at line 1067 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 1042 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 1092 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 1084 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 1126 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 1117 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 1108 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Definition at line 1100 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Reimplemented from IAthenaBarCode.
Definition at line 936 of file ParticleSigStateImpl.h.
|
inlineprotected |
Definition at line 334 of file ParticleSigStateImpl.h.
|
inlineprotectedvirtual |
set the current signal state
Implements ISignalState.
Definition at line 1157 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Reimplemented from IAthenaBarCode.
Definition at line 977 of file ParticleSigStateImpl.h.
|
inlinevirtual |
Retrieve current signal state.
Implements ISignalState.
Definition at line 1149 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
Definition at line 614 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
Definition at line 638 of file ParticleSigStateImpl.h.
|
inlinevirtual |
|
inlinevirtual |
Definition at line 622 of file ParticleSigStateImpl.h.
|
private |
Current Signal State.
Definition at line 357 of file ParticleSigStateImpl.h.
|
private |
The 4-momentum part Eventually, perhaps we can use a set since not all intermediate Signal States will be used by every object.
Definition at line 348 of file ParticleSigStateImpl.h.
|
private |
The navigable part.
Definition at line 342 of file ParticleSigStateImpl.h.
|
private |
Number of Signal States.
Definition at line 354 of file ParticleSigStateImpl.h.
|
private |
The particle-id part.
Definition at line 351 of file ParticleSigStateImpl.h.
|
staticinherited |
Definition at line 52 of file AthenaKernel/AthenaKernel/IAthenaBarCode.h.
|
staticinherited |
Definition at line 53 of file AthenaKernel/AthenaKernel/IAthenaBarCode.h.