HitCollectionMap Node1 HitCollectionMap + Insert() + Emplace() + Find() + Extract() + Record() + Record() + TransformAndRecord() + TransformAndRecord() Node2 std::unordered_map < std::string, std:: unique_ptr< HitsVectorBase > > Node2->Node1 -m_outputCollections Node3 std::string Node3->Node2 +keys Node4 std::basic_string< char > Node4->Node3 Node5 std::unique_ptr< HitsVector Base > + operator->() Node5->Node2 +elements Node6 HitsVectorBase + ~HitsVectorBase() Node6->Node5 +ptr