37#include "G4AttDefStore.hh"
38#include "G4AttValue.hh"
40#include "G4ParticleTable.hh"
41#include "G4ParticleTypes.hh"
42#include "G4Polyline.hh"
43#include "G4Polymarker.hh"
44#include "G4UIcommand.hh"
45#include "G4UnitsTable.hh"
46#include "G4VisAttributes.hh"
47#include "G4VVisManager.hh"
81 for(
size_t i = 0; i <
right.fpPointsContainer->size(); ++i)
94 delete(*fpPointsContainer)[i];
105 G4VTrajectory::ShowTrajectory(os);
120 return (G4ParticleTable::GetParticleTable()->FindParticle(
fParticleName));
127 if(!secondTrajectory)
131 G4int ent = second->GetPointEntries();
133 for(G4int i = 1; i < ent; ++i)
137 delete(*second->fpPointsContainer)[0];
138 second->fpPointsContainer->clear();
146 std::map<G4String, G4AttDef>* store =
147 G4AttDefStore::GetInstance(
"Trajectory", isNew);
152 (*store)[ID] =
G4AttDef(ID,
"Track ID",
"Bookkeeping",
"",
"G4int");
155 (*store)[PID] =
G4AttDef(PID,
"Parent ID",
"Bookkeeping",
"",
"G4int");
158 (*store)[PN] =
G4AttDef(PN,
"Particle Name",
"Physics",
"",
"G4String");
161 (*store)[Ch] =
G4AttDef(Ch,
"Charge",
"Physics",
"e+",
"G4double");
164 (*store)[PDG] =
G4AttDef(PDG,
"PDG Encoding",
"Physics",
"",
"G4int");
167 (*store)[IMom] =
G4AttDef(IMom,
"Momentum of track at start of trajectory",
168 "Physics",
"G4BestUnit",
"G4ThreeVector");
172 G4AttDef(IMag,
"Magnitude of momentum of track at start of trajectory",
173 "Physics",
"G4BestUnit",
"G4double");
176 (*store)[NTP] =
G4AttDef(NTP,
"No. of points",
"Bookkeeping",
"",
"G4int");
185 auto values =
new std::vector<G4AttValue>;
Definition of the WLSTrajectoryPoint class.
G4ThreadLocal G4Allocator< WLSTrajectory > * WLSTrajectoryAllocator
Definition of the WLSTrajectory class.
std::vector< G4VTrajectoryPoint * > WLSTrajectoryPointContainer
int GetPointEntries() const override
void ShowTrajectory(std::ostream &os=G4cout) const override
G4ThreeVector fInitialMomentum
WLSTrajectoryPointContainer * fpPointsContainer
std::vector< G4AttValue > * CreateAttValues() const override
G4ParticleDefinition * GetParticleDefinition()
G4ParticleDefinition * fParticleDefinition
void MergeTrajectory(G4VTrajectory *secondTrajectory) override
~WLSTrajectory() override
const std::map< G4String, G4AttDef > * GetAttDefs() const override
void AppendStep(const G4Step *aStep) override