3 #include "G4EventManager.hh" 4 #include "G4ProcessManager.hh" 5 #include "G4StackManager.hh" 6 #include "G4TrackingManager.hh" 13 G4HepEmTrackingManager::BuildPhysicsTable(
part);
15 G4ProcessManager* pManager =
part.GetProcessManager();
16 G4ProcessManager* pManagerShadow =
part.GetMasterProcessManager();
18 G4ProcessVector* pVector = pManager->GetProcessList();
19 for (std::size_t
j = 0;
j < pVector->size(); ++
j) {
20 if (pManagerShadow == pManager) {
21 (*pVector)[
j]->BuildPhysicsTable(
part);
23 (*pVector)[
j]->BuildWorkerPhysicsTable(
part);
29 G4HepEmTrackingManager::PreparePhysicsTable(
part);
31 G4ProcessManager* pManager =
part.GetProcessManager();
32 G4ProcessManager* pManagerShadow =
part.GetMasterProcessManager();
34 G4ProcessVector* pVector = pManager->GetProcessList();
35 for (std::size_t
j = 0;
j < pVector->size(); ++
j) {
36 if (pManagerShadow == pManager) {
37 (*pVector)[
j]->PreparePhysicsTable(
part);
39 (*pVector)[
j]->PrepareWorkerPhysicsTable(
part);
47 G4HepEmTrackingManager::HandOverOneTrack(aTrack);
50 G4EventManager* eventManager = G4EventManager::GetEventManager();
51 G4TrackingManager* trackManager = eventManager->GetTrackingManager();
53 trackManager->ProcessOneTrack(aTrack);
54 if (aTrack->GetTrackStatus() != fStopAndKill) {
55 G4Exception(
"CMSHepEmTrackingManager::HandOverOneTrack",
"NotStopped", FatalException,
"track was not stopped");
58 G4TrackVector* secondaries = trackManager->GimmeSecondaries();
59 eventManager->StackTracks(secondaries);
void PreparePhysicsTable(const G4ParticleDefinition &) override
G4double fHighEnergyLimit
~CMSHepEmTrackingManager() override
void HandOverOneTrack(G4Track *aTrack) override
void BuildPhysicsTable(const G4ParticleDefinition &) override
CMSHepEmTrackingManager(G4double highEnergyLimit)