fix circular module dep: thread trackID counter via pointer instead of include

G4tracking cannot include G4EventManager.hh because G4event already
depends on G4tracking, creating a circular dependency. Fix: pass a
raw G4int* pointer to the event-level trackIDCounter from G4EventManager
through G4TrackingManager::SetTrackIDCounter into G4SteppingManager,
where ProcessSecondariesFromParticleChange uses it to pre-assign track
IDs without any new include.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-11 11:07:56 +02:00
parent e7827c9b07
commit 71c7582c45
5 changed files with 9 additions and 10 deletions
-3
View File
@@ -59,9 +59,6 @@ class G4EventManager
static G4EventManager* GetEventManager();
// This method returns the singleton pointer of G4EventManager.
G4int ReserveNextTrackID();
// Pre-assign the next sequential track ID to a secondary being born inside
// G4SteppingManager, so that its ID is available in UserSteppingAction.
G4EventManager();
~G4EventManager();