53 :fRegionName(regName), fNSplit(nsplit)
71 assert ( 0 != particleChange);
72 return particleChange;
77 assert ( 0 != particleChange);
78 return particleChange;
85 if ( initialSplitTrackID > 1 ) {
87 assert ( 0 != particleChange);
88 return particleChange;
92 G4int splitTrackID = 3;
94 std::vector<G4Track*> secondaries;
95 std::vector<G4int> vSplitTrack;
97 for (
int i = 0; i <
fNSplit; i++ ) {
99 assert( 0 != particleChange);
103 secondaries.push_back( newTrack );
104 vSplitTrack.push_back( splitTrackID );
114 std::vector<G4Track*>::iterator iter = secondaries.begin();
116 while( iter != secondaries.end() ) {
130 return particleChange;
void AddSecondary(G4Track *aSecondary)
Definition of the SplitProcess class.
G4VParticleChange * PostStepDoIt(const G4Track &track, const G4Step &step)
G4LogicalVolume * GetLogicalVolume() const
void SetWeight(G4double aValue)
G4StepPoint * GetPreStepPoint() const
SplitProcess(G4String regName, G4int split)
void SetSecondaryWeightByProcess(G4bool)
virtual G4VPhysicalVolume * GetVolume(G4int depth=0) const
void SetVerboseLevel(G4int vLevel)
const G4TouchableHandle & GetTouchableHandle() const
G4double GetWeight() const
G4Track * GetTrack() const
static G4RegionStore * GetInstance()
G4Track * GetSecondary(G4int anIndex) const
G4VUserTrackInformation * GetUserInformation() const
virtual G4VParticleChange * PostStepDoIt(const G4Track &track, const G4Step &stepData)=0
G4Region * GetRegion() const
void SetUserInformation(G4VUserTrackInformation *aValue) const
G4Region * FindOrCreateRegion(const G4String &name)
void SetNumberOfSecondaries(G4int totSecondaries)