StoredHit Node1 StoredHit + phiShift + etaShift + layer + invalidLayer + StoredHit() + rzrad() Node2 std::shared_ptr< const FPGATrackSimHit >   + operator->() Node2->Node1 +hitptr Node3 FPGATrackSimHit # m_hitType # m_detectorZone # m_detType # m_identifier # m_identifierHash # m_rdoIdentifier # m_layer_disk # m_layer_disk_old # m_side # m_side_old and 46 more... + FPGATrackSimHit() + ~FPGATrackSimHit() + setHitType() + setDetType() + setDetectorZone() + getHitType() + getDetType() + getDetectorZone() + isMapped() + isClustered() and 106 more... # ClassDefNV() Node3->Node2 +ptr Node4 FPGATrackSimMultiTruth   + FPGATrackSimMultiTruth() + FPGATrackSimMultiTruth() + ~FPGATrackSimMultiTruth() + begin() + end() + begin() + end() + isEmpty() + best_barcode() + add() and 6 more... - add() - maximize() - total_weight() - weight() Node4->Node3 #m_truth Node5 std::map< Barcode, Weight > + keys + elements + keys + elements   Node5->Node4 -m_truth Node6 std::vector< unsigned > + elements + elements   Node6->Node3 #m_IDhashVec Node7 std::vector< int > + elements + elements   Node7->Node3 #m_EtaIndexVec #m_PhiIndexVec