59 : positionRecord(0), fTrackID(0), fParentID(0),
60 PDGEncoding( 0 ), PDGCharge(0.0), ParticleName(
""),
61 initialKineticEnergy( 0. ), initialMomentum(
G4ThreeVector() )
85 ParticleName = right.ParticleName;
86 PDGCharge = right.PDGCharge;
87 PDGEncoding = right.PDGEncoding;
88 fTrackID = right.fTrackID;
89 fParentID = right.fParentID;
90 initialKineticEnergy = right.initialKineticEnergy;
91 initialMomentum = right.initialMomentum;
94 for(
size_t i=0;i<right.positionRecord->size();i++)
103 if (positionRecord) {
106 for(i=0;i<positionRecord->size();i++){
107 delete (*positionRecord)[i];
109 positionRecord->clear();
110 delete positionRecord;
140 std::map<G4String,G4AttDef>* store
145 (*store)[ID] =
G4AttDef(ID,
"Track ID",
"Physics",
"",
"G4int");
148 (*store)[PID] =
G4AttDef(PID,
"Parent ID",
"Physics",
"",
"G4int");
151 (*store)[PN] =
G4AttDef(PN,
"Particle Name",
"Physics",
"",
"G4String");
154 (*store)[Ch] =
G4AttDef(Ch,
"Charge",
"Physics",
"e+",
"G4double");
157 (*store)[PDG] =
G4AttDef(PDG,
"PDG Encoding",
"Physics",
"",
"G4int");
161 G4AttDef(IKE,
"Initial kinetic energy",
162 "Physics",
"G4BestUnit",
"G4double");
165 (*store)[IMom] =
G4AttDef(IMom,
"Initial momentum",
166 "Physics",
"G4BestUnit",
"G4ThreeVector");
170 (IMag,
"Initial momentum magnitude",
171 "Physics",
"G4BestUnit",
"G4double");
174 (*store)[NTP] =
G4AttDef(NTP,
"No. of points",
"Physics",
"",
"G4int");
183 std::vector<G4AttValue>* values =
new std::vector<G4AttValue>;
191 values->push_back(
G4AttValue(
"PN",ParticleName,
""));
221 positionRecord->push_back(
233 if(!secondTrajectory)
return;
237 for(
G4int i=1;i<ent;i++)
239 positionRecord->push_back((*(seco->positionRecord))[i]);
242 delete (*seco->positionRecord)[0];
243 seco->positionRecord->clear();