DerivationFramework::JetTrackParticleThinning Node1 DerivationFramework ::JetTrackParticleThinning - m_streamName - m_selectionString - m_trackSelectionString + JetTrackParticleThinning() + ~JetTrackParticleThinning() + initialize() + finalize() + doThinning() Node2 extends< ExpressionParser User< AthAlgTool, kNumJetTPThinning Parser >, IThinningTool >     Node2->Node1 Node3 std::atomic< unsigned int > + ptr   Node3->Node1 -m_npass -m_ntot Node4 SG::ReadHandleKey< DataVector< xAOD::Jet _v1 > > + 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() Node4->Node1 -m_jetKey Node5 SG::VarHandleKey + isDecorHandleKey - m_hashedKey - m_isEventStore + VarHandleKey() + operator=() + assign() + initialize() + initialize() + clid() + key() + empty() + storeHandle() + owningHandle() + isEventStore() + start() + hashedKey() # pythonRepr() - setOwningHandle() - setKey() - updateKey() - parseKey() - updateHandle() Node5->Node4 Node41 SG::ReadHandleKey< DataVector< xAOD::TrackParticle _v1 > > + 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() Node5->Node41 Node42 SG::WriteHandleKey < SG::ThinningDecision > + isDecorHandleKey - m_storeHandle - m_sgKey - m_hashedKey - m_isEventStore - m_owningHandle + WriteHandleKey() + operator=() + assign() + initialize() + initialize() + clid() + key() + empty() + storeHandle() + owningHandle() + isEventStore() + start() + hashedKey() # pythonRepr() - setOwningHandle() - setKey() - updateKey() - parseKey() - updateHandle() Node5->Node42 Node6 Gaudi::DataHandle     Node6->Node5 Node7 ServiceHandle< IProxyDict >     Node7->Node5 -m_storeHandle Node40 SG::ThinningHandleKey < DataVector< xAOD::TrackParticle _v1 > > + isDecorHandleKey - m_storeHandle - m_sgKey - m_hashedKey - m_isEventStore - m_owningHandle + ThinningHandleKey() + operator=() + initialize() + decisionHandleKey() + assign() + initialize() + initialize() + clid() + key() + empty() + storeHandle() + owningHandle() + isEventStore() + start() + hashedKey() # pythonRepr() - setOwningHandle() - setKey() - updateKey() - parseKey() - updateHandle() Node40->Node1 -m_inDetSGKey Node41->Node40 Node42->Node40 -m_decisionKey