45#ifndef G4SmoothTrajectory_hh
46#define G4SmoothTrajectory_hh 1
65 using G4TrajectoryPointContainer = std::vector<G4VTrajectoryPoint*>;
80 inline void*
operator new(size_t);
81 inline void operator delete(
void*);
90 {
return ParticleName; }
94 {
return PDGEncoding; }
96 {
return initialKineticEnergy; }
98 {
return initialMomentum; }
106 {
return positionRecord->size(); }
108 {
return (*positionRecord)[i]; }
115 virtual const std::map<G4String,G4AttDef>*
GetAttDefs()
const;
120 G4TrajectoryPointContainer* positionRecord =
nullptr;
123 G4int PDGEncoding = 0;
126 G4double initialKineticEnergy = 0.0;
133inline void* G4SmoothTrajectory::operator
new(size_t)
142inline void G4SmoothTrajectory::operator
delete(
void* aTrajectory)
G4TRACKING_DLL G4Allocator< G4SmoothTrajectory > *& aSmoothTrajectoryAllocator()
G4GLOB_DLL std::ostream G4cout
G4int GetPDGEncoding() const
virtual void DrawTrajectory() const
virtual G4int GetPointEntries() const
G4String GetParticleName() const
virtual ~G4SmoothTrajectory()
G4int operator==(const G4SmoothTrajectory &r) const
G4int GetParentID() const
G4ThreeVector GetInitialMomentum() const
virtual G4VTrajectoryPoint * GetPoint(G4int i) const
G4double GetInitialKineticEnergy() const
virtual void AppendStep(const G4Step *aStep)
G4ParticleDefinition * GetParticleDefinition()
virtual void MergeTrajectory(G4VTrajectory *secondTrajectory)
G4SmoothTrajectory & operator=(const G4SmoothTrajectory &)=delete
virtual std::vector< G4AttValue > * CreateAttValues() const
G4double GetCharge() const
virtual const std::map< G4String, G4AttDef > * GetAttDefs() const
virtual void ShowTrajectory(std::ostream &os=G4cout) const