Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef ISF_EVENT_ISFPARTICLE_H
6 #define ISF_EVENT_ISFPARTICLE_H
9 #include "GaudiKernel/MsgStream.h"
22 #include "CLHEP/Geometry/Point3D.h"
23 #include "CLHEP/Geometry/Vector3D.h"
64 const HepGeom::Vector3D<double>&
mom,
218 #endif // ISF_EVENT_ISFPARTICLE_H
double ekin() const
Kinetic energy.
std::pair< AtlasDetDescr::AtlasRegion, ISF::SimSvcID > DetRegionSvcIDPair
the datatype to be used to store each individual particle hop
void setOrder(ParticleOrder order)
MsgStream & dump(MsgStream &out) const
Dump methods to be used by the overloaded stream operator (inheritance!)
ParticleOrder getOrder() const
return the particle order (eg used to assure ID->Calo->MS simulation order)
void updateMomentum(const Amg::Vector3D &momentum)
Update the momentum of the ISFParticle.
void setNextGeoID(AtlasDetDescr::AtlasRegion geoID)
register the next AtlasDetDescr::AtlasRegion
bool isEqual(const ISFParticle &rhs) const
void setTruthBinding(TruthBinding *truth)
TruthBinding * getTruthBinding()
ParticleUserInformation * m_userInfo
user information stored with the ISFParticle
const HepMcParticleLink * m_partLink
void updatePosition(const Amg::Vector3D &position)
Update the position of the ISFParticle.
ParticleHistory m_history
SimSvcID originSimID() const
the simulation service the particle originates from
int pdgCode() const
PDG value.
std::ostream & dump(std::ostream &out) const
int m_barcode
barcode TODO remove in favour of m_status + m_uid
bool operator==(const ISFParticle &rhs) const
Comparisons.
int barcode() const
the barcode
const Amg::Vector3D & position() const
The current position of the ISFParticle.
ParticleOrder m_order
particle simulation order
int ParticleOrder
particle order definition
std::vector< DetRegionSvcIDPair > ParticleHistory
the container type to be used for the particle hops
TruthBinding * m_truth
< unique ID
void setParticleLink(const HepMcParticleLink *partLink)
a link optimized in size for a GenParticle in a McEventCollection
AtlasDetDescr::AtlasRegion nextGeoID() const
next geoID the particle will be simulated in
AtlasDetDescr::AtlasRegion originGeoID() const
the sub-detector ID the particle's originates from
ISFParticle & operator=(const ISFParticle &rhs)
Assignment operator.
void setId(int id)
set a new unique ID
constexpr int UNDEFINED_ID
ISFParticle()=delete
disallow default constructor
double timeStamp() const
Timestamp of the ISFParticle.
const Amg::Vector3D & momentum() const
The current momentum vector of the ISFParticle.
void setUserInformation(ParticleUserInformation *userInfo)
void setNextSimID(SimSvcID simID)
register the next SimSvcID
Eigen::Matrix< double, 3, 1 > Vector3D
double charge() const
charge of the particle
const ParticleHistory & history() const
the particle's full history
bool isIdent(const ISFParticle &rhs) const
MsgStream & operator<<(MsgStream &sl, const ISF::ISFParticle &isfp)
const HepMcParticleLink * getParticleLink() const
HepMcParticleLink accessors.
SimSvcID prevSimID() const
the simulation service that previously treated this particle
SimSvcID nextSimID() const
the next simulation service the particle will be sent to
~ISFParticle()
Destructor.
uint8_t SimSvcID
Simulation service ID datatype.
ParticleUserInformation * getUserInformation()
void setBarcode(int bc)
set a new barcode
const ParticleUserInformation * getUserInformation() const
get/set ParticleUserInformation
const TruthBinding * getTruthBinding() const
pointer to the simulation truth - optional, can be 0
AtlasDetDescr::AtlasRegion prevGeoID() const
previous geoID that the particle was simulated in
double mass() const
mass of the particle