G4MagFieldSvcBase Node1 G4MagFieldSvcBase # m_fieldHolder + G4MagFieldSvcBase() + ~G4MagFieldSvcBase() + getField() # makeField() Node3 ConstantFieldSvc - m_fieldX - m_fieldY - m_fieldZ + ConstantFieldSvc() + ~ConstantFieldSvc() + initialize() # makeField() * m_fieldX * m_fieldY * m_fieldZ Node1->Node3 Node4 StandardFieldSvc - m_useMagFieldSvc - m_magFieldSvc - m_fullMapFilename - m_soleMapFilename - m_toroMapFilename - m_mapSoleCurrent - m_mapToroCurrent - m_useSoleCurrent - m_useToroCurrent - m_fieldMap + StandardFieldSvc() + ~StandardFieldSvc() + initialize() # makeField() - createFieldMap() - solenoidOn() - toroidOn() Node1->Node4 Node2 extends< AthService, IG4FieldSvc > Node2->Node1