Message: SegV in PreUserTrackingAction due to missing Touchable. Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

None SegV in PreUserTrackingAction due to missing Touchable. 

Forum: Event and Track Management
Re: Question Pruning trajectories after particle tracking? (Brett Viren)
Re: None Re: Pruning trajectories after particle tracking? (Makoto Asai)
Date: 17 Nov, 2003
From: Brett Viren <Brett Viren>

Makoto Asai writes:
 > In your PostUserTrackingAction() method, you can invoke
 > G4TrackingManager::SetStoreTrajectory(false).
 > In case a trajectory for this particular track has been made,
 > it is pruned. Don't forget to reset SetStoreTrajectory(true)
 > in your PreUserTrackingAction() for next track.

Thanks for this, but it leads me to a problem:

The code I'm working on has custom subclasses of G4TrackingAction,
G4Trajectory and G4TrajectoryPoint.  They are written here with names
lacking the "G4" prefix.

In TrackingAction::PreUserTrackingAction() a Trajectory is created and
in the process, G4Track::GetVelocity() is called in order to set the
the initial TrajectoryPoint's velocity.  (This is the correct
procedure, right?).

When this sequence is executed for opticalphotons it leads to a SegV.

I have traced the SegV to the apparent fact that there is no Touchable
associated with the G4Track at the time PreUserTrackingAction() is
called.  This leads to the SegV as G4Track::GetVelocity() accesses the
Touchable in order to get the RINDEX of the material.

In G4TrackingManager I find that indeed the PreUserTrackingAction() is
called just before G4SteppingManager::SetInitialStep, and it is this
latter method which sets the G4Track's touchable.

This is using 4.5.2.

Is this a real G4 bug, or is it possible I have done something wrong?

Thanks,
-Brett.


Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

1 Feedback: Re: SegV in PreUserTrackingAction due to missing Touchable.   (Peter Gumplinger - 17 Nov, 2003)
 Add Message Add Message
to: "SegV in PreUserTrackingAction due to missing Touchable."

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]