Athena::ThinningCacheTool Node1 Athena::ThinningCacheTool - m_streamName + initialize() + postInitialize() + preExecute() + preStream() + postExecute() + preFinalize() - wantedKey() Node2 extends< AthAlgTool, IAthenaOutputTool > Node2->Node1 Node3 ServiceHandle< ITrigNavigation ThinningSvc > Node3->Node1 -m_trigNavigationThinningSvc Node4 SG::ThinningCache - m_sgmap + empty() + thinning() + thinning() + addThinning() + trigNavigationThinningSvc() + setTrigNavigationThinningSvc() + lockOwned() + setVetoed() + setCompression() + thinningInfo() + clear() - merge() Node4->Node1 -m_cache Node5 std::vector< std::unique _ptr< SG::ThinningDecisionBase > > Node5->Node4 -m_owned Node6 std::unique_ptr< SG ::ThinningDecisionBase > + operator->() Node6->Node5 +elements Node9 std::unordered_map < std::string, ThinningInfo > Node9->Node4 -m_map Node10 SG::ThinningInfo + vetoed() + compression() Node10->Node9 +elements Node19 std::string Node19->Node9 +keys Node21 ITrigNavigationThinningSvc + DeclareInterfaceID() + doSlimming() Node21->Node4 -m_trigNavigationThinningSvc