PFMatch::ClusterPlainEtaPhiProvider Node1 PFMatch::ClusterPlainEta PhiProvider + ClusterPlainEtaPhiProvider() + ~ClusterPlainEtaPhiProvider() + getPosition() Node2 PFMatch::ClusterPosition Provider< EtaPhi > Node2->Node1 Node3 PFMatch::PositionProvider < ICluster, EtaPhi > + ~PositionProvider() + getPosition() # PositionProvider() Node3->Node2 Node4 PFMatch::IPositionProvider + ~IPositionProvider() # IPositionProvider() Node4->Node3