  | 
  
    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.
 
def time(flags, cells_name, *args, **kw)
 
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