4 #include "KVGeoNodeIterator.h" 
   38    if (
start == 
nullptr) {
 
   39       current_node = start_node;
 
   40       next_trajectory->
Reset();
 
   43       current_node = start_node = 
start;
 
   44       iter_on_traj = trajectory;
 
   45       delete next_trajectory;
 
   46       next_trajectory = 
new TIter(
start->GetTrajectories());
 
   48    current_trajectory = 
nullptr;
 
   49    begin_iteration_on_next_trajectory();
 
Path taken by particles through multidetector geometry.
 
Information on relative positions of detectors & particle trajectories.
 
Iterate from node to node along trajectories in array geometry.
 
KVGeoDNTrajectory * current_trajectory
 
KVGeoDetectorNode * start_node
 
void ResetTrajectory(KVGeoDNTrajectory *trajectory=nullptr)
 
KVGeoDetectorNode * current_node
 
void begin_iteration_on_next_trajectory() const
 
KVGeoDNTrajectory * iter_on_traj
limit iteration to this trajectory, if given
 
void Reset(KVGeoDetectorNode *start=nullptr, KVGeoDNTrajectory *trajectory=nullptr)