File indexing completed on 2025-12-10 10:18:05
0001 #pragma once
0002
0003 #include <TObject.h>
0004 #include <TVector3.h>
0005
0006 namespace IRT2 {
0007
0008 class ChargedParticleStep: public TObject {
0009 public:
0010 ChargedParticleStep() {};
0011 ChargedParticleStep(const TVector3 &position, const TVector3 &momentum, double qtime = 0.0):
0012 m_Position(position), m_Momentum(momentum), m_Time(qtime) {};
0013 ~ChargedParticleStep() {};
0014
0015 inline const TVector3 &GetPosition ( void ) const { return m_Position; };
0016 inline const TVector3 &GetMomentum ( void ) const { return m_Momentum; };
0017 inline double GetTime ( void ) const { return m_Time; };
0018 inline TVector3 GetDirection( void ) const { return m_Momentum.Unit(); };
0019
0020
0021 private:
0022 TVector3 m_Position, m_Momentum;
0023
0024 double m_Time;
0025
0026 #ifndef DISABLE_ROOT_IO
0027 ClassDef(ChargedParticleStep, 2);
0028 #endif
0029 };
0030
0031 }