PFMatch::TrackEtaPhiInFixedLayersProvider Node1 PFMatch::TrackEtaPhiInFixed LayersProvider - m_barrelLayer - m_endcapLayer - m_fcalLayer + TrackEtaPhiInFixedLayers Provider() + ~TrackEtaPhiInFixedLayers Provider() + getPosition() Node2 PFMatch::TrackPositionProvider < EtaPhi > Node2->Node1 Node3 PFMatch::PositionProvider < ITrack, EtaPhi > + ~PositionProvider() + getPosition() # PositionProvider() Node3->Node2 Node4 PFMatch::IPositionProvider + ~IPositionProvider() # IPositionProvider() Node4->Node3