Garfield++ v1r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
|
#include <Track.hh>
Public Member Functions | |
Track () | |
virtual | ~Track () |
virtual void | SetParticle (std::string part) |
void | SetEnergy (const double e) |
void | SetBetaGamma (const double bg) |
void | SetBeta (const double beta) |
void | SetGamma (const double gamma) |
void | SetMomentum (const double p) |
void | SetKineticEnergy (const double ekin) |
double | GetEnergy () const |
double | GetBetaGamma () const |
double | GetBeta () const |
double | GetGamma () const |
double | GetMomentum () const |
double | GetKineticEnergy () const |
void | SetSensor (Sensor *s) |
virtual bool | NewTrack (const double x0, const double y0, const double z0, const double t0, const double dx0, const double dy0, const double dz0)=0 |
virtual bool | GetCluster (double &xcls, double &ycls, double &zcls, double &tcls, int &n, double &e, double &extra)=0 |
virtual double | GetClusterDensity () |
virtual double | GetStoppingPower () |
void | EnablePlotting (ViewDrift *viewer) |
void | DisablePlotting () |
void | EnableDebugging () |
void | DisableDebugging () |
Protected Member Functions | |
void | PlotNewTrack (const double x0, const double y0, const double z0) |
void | PlotCluster (const double x0, const double y0, const double z0) |
Protected Attributes | |
std::string | className |
double | q |
int | spin |
double | mass |
double | energy |
double | beta2 |
bool | isElectron |
std::string | particleName |
Sensor * | sensor |
bool | isChanged |
bool | usePlotting |
ViewDrift * | viewer |
bool | debug |
int | plotId |
Garfield::Track::Track | ( | ) |
|
inline |
void Garfield::Track::DisablePlotting | ( | ) |
|
inline |
void Garfield::Track::EnablePlotting | ( | ViewDrift * | viewer | ) |
|
inline |
Definition at line 33 of file Track.hh.
Referenced by Garfield::TrackBichsel::NewTrack(), and Garfield::TrackHeed::NewTrack().
|
inline |
Definition at line 32 of file Track.hh.
Referenced by Garfield::TrackBichsel::GetClusterDensity(), Garfield::TrackBichsel::GetStoppingPower(), and Garfield::TrackBichsel::NewTrack().
|
pure virtual |
Implemented in Garfield::TrackBichsel, Garfield::TrackHeed, Garfield::TrackSimple, Garfield::TrackElectron, and Garfield::TrackPAI.
|
inlinevirtual |
Reimplemented in Garfield::TrackBichsel, Garfield::TrackElectron, Garfield::TrackHeed, Garfield::TrackPAI, and Garfield::TrackSimple.
Definition at line 50 of file Track.hh.
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
Reimplemented in Garfield::TrackBichsel, Garfield::TrackElectron, Garfield::TrackHeed, Garfield::TrackPAI, and Garfield::TrackSimple.
Definition at line 52 of file Track.hh.
|
pure virtual |
Implemented in Garfield::TrackBichsel, Garfield::TrackElectron, Garfield::TrackHeed, Garfield::TrackPAI, and Garfield::TrackSimple.
|
protected |
Definition at line 221 of file Track.cc.
Referenced by Garfield::TrackHeed::GetCluster().
|
protected |
Definition at line 214 of file Track.cc.
Referenced by Garfield::TrackHeed::NewTrack().
void Garfield::Track::SetBeta | ( | const double | beta | ) |
void Garfield::Track::SetBetaGamma | ( | const double | bg | ) |
Definition at line 116 of file Track.cc.
Referenced by Track(), and Garfield::TrackElectron::TrackElectron().
void Garfield::Track::SetEnergy | ( | const double | e | ) |
void Garfield::Track::SetGamma | ( | const double | gamma | ) |
void Garfield::Track::SetKineticEnergy | ( | const double | ekin | ) |
Definition at line 171 of file Track.cc.
Referenced by GarfieldPhysics::DoIt().
void Garfield::Track::SetMomentum | ( | const double | p | ) |
|
virtual |
Reimplemented in Garfield::TrackElectron.
Definition at line 29 of file Track.cc.
Referenced by GarfieldPhysics::DoIt().
void Garfield::Track::SetSensor | ( | Sensor * | s | ) |
Definition at line 185 of file Track.cc.
Referenced by GarfieldPhysics::InitializePhysics().
|
protected |
Definition at line 67 of file Track.hh.
Referenced by GetBeta(), GetBetaGamma(), Garfield::TrackElectron::GetCluster(), GetGamma(), GetMomentum(), Garfield::TrackElectron::GetStoppingPower(), SetBeta(), SetBetaGamma(), SetEnergy(), SetGamma(), SetKineticEnergy(), and SetMomentum().
|
protected |
Definition at line 61 of file Track.hh.
Referenced by EnablePlotting(), Garfield::TrackBichsel::GetCluster(), Garfield::TrackHeed::GetCluster(), Garfield::TrackSimple::GetCluster(), Garfield::TrackElectron::GetCluster(), Garfield::TrackPAI::GetCluster(), Garfield::TrackBichsel::GetClusterDensity(), Garfield::TrackElectron::GetClusterDensity(), Garfield::TrackHeed::GetClusterDensity(), Garfield::TrackPAI::GetClusterDensity(), Garfield::TrackHeed::GetElectron(), Garfield::TrackBichsel::GetStoppingPower(), Garfield::TrackElectron::GetStoppingPower(), Garfield::TrackHeed::GetStoppingPower(), Garfield::TrackPAI::GetStoppingPower(), Garfield::TrackBichsel::NewTrack(), Garfield::TrackElectron::NewTrack(), Garfield::TrackHeed::NewTrack(), Garfield::TrackPAI::NewTrack(), Garfield::TrackSimple::NewTrack(), PlotCluster(), SetBeta(), SetBetaGamma(), Garfield::TrackSimple::SetClusterDensity(), SetEnergy(), Garfield::TrackHeed::SetEnergyMesh(), SetGamma(), SetKineticEnergy(), SetMomentum(), SetParticle(), Garfield::TrackElectron::SetParticle(), Garfield::TrackHeed::SetParticleUser(), SetSensor(), Garfield::TrackSimple::SetStoppingPower(), Garfield::TrackBichsel::TrackBichsel(), Garfield::TrackElectron::TrackElectron(), Garfield::TrackHeed::TrackHeed(), Garfield::TrackPAI::TrackPAI(), Garfield::TrackSimple::TrackSimple(), Garfield::TrackHeed::TransportDeltaElectron(), and Garfield::TrackHeed::TransportPhoton().
|
protected |
Definition at line 78 of file Track.hh.
Referenced by DisableDebugging(), EnableDebugging(), Garfield::TrackBichsel::GetCluster(), Garfield::TrackSimple::GetCluster(), Garfield::TrackPAI::GetCluster(), Garfield::TrackBichsel::GetClusterDensity(), Garfield::TrackBichsel::GetStoppingPower(), Garfield::TrackElectron::NewTrack(), Garfield::TrackHeed::NewTrack(), and Garfield::TrackPAI::NewTrack().
|
protected |
Definition at line 66 of file Track.hh.
Referenced by GetEnergy(), GetKineticEnergy(), SetBeta(), SetBetaGamma(), SetEnergy(), SetGamma(), SetKineticEnergy(), and SetMomentum().
|
protected |
Definition at line 73 of file Track.hh.
Referenced by Garfield::TrackPAI::GetCluster(), Garfield::TrackBichsel::GetClusterDensity(), Garfield::TrackPAI::GetClusterDensity(), Garfield::TrackBichsel::GetStoppingPower(), Garfield::TrackPAI::GetStoppingPower(), Garfield::TrackBichsel::NewTrack(), Garfield::TrackHeed::NewTrack(), Garfield::TrackPAI::NewTrack(), SetBeta(), SetBetaGamma(), SetEnergy(), SetGamma(), SetKineticEnergy(), SetMomentum(), Garfield::TrackHeed::TransportDeltaElectron(), and Garfield::TrackHeed::TransportPhoton().
|
protected |
Definition at line 68 of file Track.hh.
Referenced by SetParticle(), Garfield::TrackHeed::SetParticleUser(), and Garfield::TrackElectron::TrackElectron().
|
protected |
Definition at line 65 of file Track.hh.
Referenced by GetKineticEnergy(), GetMomentum(), Garfield::TrackHeed::NewTrack(), SetBeta(), SetBetaGamma(), SetEnergy(), SetGamma(), SetKineticEnergy(), SetMomentum(), SetParticle(), Garfield::TrackHeed::SetParticleUser(), and Garfield::TrackElectron::TrackElectron().
|
protected |
Definition at line 69 of file Track.hh.
Referenced by Garfield::TrackHeed::NewTrack(), SetParticle(), Garfield::TrackHeed::SetParticleUser(), and Garfield::TrackElectron::TrackElectron().
|
protected |
Definition at line 80 of file Track.hh.
Referenced by PlotCluster(), and PlotNewTrack().
|
protected |
Definition at line 63 of file Track.hh.
Referenced by Garfield::TrackHeed::NewTrack(), SetParticle(), Garfield::TrackHeed::SetParticleUser(), and Garfield::TrackElectron::TrackElectron().
|
protected |
Definition at line 71 of file Track.hh.
Referenced by Garfield::TrackBichsel::GetCluster(), Garfield::TrackHeed::GetCluster(), Garfield::TrackSimple::GetCluster(), Garfield::TrackElectron::GetCluster(), Garfield::TrackPAI::GetCluster(), Garfield::TrackBichsel::NewTrack(), Garfield::TrackElectron::NewTrack(), Garfield::TrackHeed::NewTrack(), Garfield::TrackPAI::NewTrack(), Garfield::TrackSimple::NewTrack(), SetSensor(), Garfield::TrackHeed::TransportDeltaElectron(), and Garfield::TrackHeed::TransportPhoton().
|
protected |
Definition at line 64 of file Track.hh.
Referenced by SetParticle(), Garfield::TrackHeed::SetParticleUser(), and Garfield::TrackElectron::TrackElectron().
|
protected |
Definition at line 75 of file Track.hh.
Referenced by DisablePlotting(), EnablePlotting(), Garfield::TrackHeed::GetCluster(), Garfield::TrackHeed::NewTrack(), PlotCluster(), and PlotNewTrack().
|
protected |
Definition at line 76 of file Track.hh.
Referenced by DisablePlotting(), EnablePlotting(), PlotCluster(), and PlotNewTrack().