GenWeightDeclaration Node1 GenWeightDeclaration - m_weightsDeclared + GenWeightDeclaration() + initialize() + execute() Node2 GenBase   + GenBase() + ~GenBase() + initialize() + execute() + ATLAS_NOT_CONST_THREAD _SAFE() + event_const() + ATLAS_NOT_CONST_THREAD _SAFE() + events_const() * m_mkMcEvent * GenBase() * ~GenBase() * initialize() * execute() * ATLAS_NOT_CONST_THREAD _SAFE() * event_const() * ATLAS_NOT_CONST_THREAD _SAFE() * events_const() Node2->Node1 Node3 AthAlgorithm   + AthAlgorithm() + execute() # isReEntrant() - execute() Node3->Node2 Node11 std::string     Node11->Node2 #m_mcEventKey Node13 SG::ReadHandleKey< McEventCollection > + isDecorHandleKey - m_storeHandle - m_sgKey - m_hashedKey - m_isEventStore - m_owningHandle + ReadHandleKey() + operator=() + assign() + initialize() + initialize() + clid() + key() + empty() + storeHandle() + owningHandle() + isEventStore() + start() + hashedKey() # pythonRepr() - setOwningHandle() - setKey() - updateKey() - parseKey() - updateHandle() Node13->Node2 -m_mcevents_const Node47 ServiceHandle< ICutFlowSvc >     Node47->Node1 -m_cutFlowSvc Node48 CutFlowSvc - m_configured - m_completeCollName - m_skimmingCycle - m_inputStream + CutFlowSvc() + initialize() + handle() + registerFilter() + ATLAS_NOT_THREAD_SAFE() + registerCut() + setFilterDescription() + addEvent() + addEvent() + getNAcceptedEvents() + getCutBookkeepers() + setNumberOfWeightVariations() - addEvent() - determineCycleNumberFrom Input() - createContainers() - getCutBookkeeper() Node48->Node1 -m_cutFlowSvcImpl Node49 extends< AthService, ICutFlowSvc, IIncidentListener >     Node49->Node48 Node8 ServiceHandle< StoreGate Svc >     Node8->Node48 -m_inMetaDataStore Node87 ServiceHandle< IHepMCWeight Svc >     Node87->Node1 -m_hepMCWeightSvc