|
ATLAS Offline Software
|
Go to the documentation of this file.
12 #include "G4ChordFinder.hh"
13 #include "G4FieldManager.hh"
14 #include "G4MagIntegratorStepper.hh"
15 #include "G4MagneticField.hh"
16 #include "G4PropagatorInField.hh"
17 #include "G4TransportationManager.hh"
18 #include "G4Version.hh"
19 #include "G4VIntegrationDriver.hh"
25 const std::string&
name,
44 auto transpManager = G4TransportationManager::GetTransportationManager();
45 G4FieldManager* fieldMgr(
nullptr);
51 ATH_MSG_ERROR(
"GlobalFieldManagerTool::initializeField() - " <<
52 "Field manager already exists!");
53 return StatusCode::FAILURE;
62 transpManager->SetFieldManager(fieldMgr);
65 fieldMgr = transpManager->GetFieldManager();
69 fieldMgr->SetDetectorField(
field);
73 fieldMgr->CreateChordFinder(
field);
75 #if G4VERSION_NUMBER < 1040
78 G4MagInt_Driver* magDriver = fieldMgr->GetChordFinder()->GetIntegrationDriver();
79 magDriver->RenewStepperAndAdjust(stepper);
83 G4ChordFinder* chordFinder = fieldMgr->GetChordFinder();
84 chordFinder->SetIntegrationDriver(
driver);
88 G4PropagatorInField* propagator = transpManager->GetPropagatorInField();
93 return StatusCode::SUCCESS;
void set(T *obj)
Assign the object of the current thread.
::StatusCode StatusCode
StatusCode definition for legacy code.
T * get()
Get the object of the current thread.
G4FieldManager that sets tight stepping for muons; caches global values for other particles.