G4UA::LooperKillerTool Node1 G4UA::LooperKillerTool + LooperKillerTool() + initialize() + finalize() # makeAndFillAction() Node2 G4UA::UserActionToolBase < LooperKiller > + UserActionToolBase() + fillUserAction() # makeAndFillAction() Node2->Node1 Node3 extends< AthAlgTool, IUserActionTool > Node3->Node2 Node4 G4UA::ThreadSpecificUser Action< LooperKiller > - m_threadMap + ~ThreadSpecificUserAction() + get() + set() + begin() + end() + accumulate() Node4->Node2 #m_actions Node5 G4UA::LooperKiller ::Config + MaxSteps + PrintSteps + VerboseLevel + AbortEvent + SetError Node5->Node1 -m_config