00001 #ifndef TrackingTools_PatternTools_TrackConstraintAssociation_h 00002 #define TrackingTools_PatternTools_TrackConstraintAssociation_h 00003 00004 #include "DataFormats/Common/interface/AssociationMap.h" 00005 #include "DataFormats/GeometryVector/interface/GlobalPoint.h" 00006 #include "DataFormats/GeometryCommonDetAlgo/interface/GlobalError.h" 00007 #include "DataFormats/TrackReco/interface/TrackFwd.h" 00008 typedef std::pair<double,double> MomentumConstraint; 00009 typedef std::pair<GlobalPoint,GlobalError> VertexConstraint; 00010 00011 typedef edm::AssociationMap<edm::OneToOne<reco::TrackCollection,std::vector<MomentumConstraint> > > TrackMomConstraintAssociationCollection; 00012 typedef TrackMomConstraintAssociationCollection::value_type TrackMomConstraintAssociation; 00013 typedef edm::Ref<TrackMomConstraintAssociationCollection> TrackMomConstraintAssociationRef; 00014 typedef edm::RefProd<TrackMomConstraintAssociationCollection> TrackMomConstraintAssociationRefProd; 00015 typedef edm::RefVector<TrackMomConstraintAssociationCollection> TrackMomConstraintAssociationRefVector; 00016 00017 00018 typedef edm::AssociationMap<edm::OneToOne<reco::TrackCollection,std::vector<VertexConstraint> > > TrackVtxConstraintAssociationCollection; 00019 typedef TrackVtxConstraintAssociationCollection::value_type TrackVtxConstraintAssociation; 00020 typedef edm::Ref<TrackVtxConstraintAssociationCollection> TrackVtxConstraintAssociationRef; 00021 typedef edm::RefProd<TrackVtxConstraintAssociationCollection> TrackVtxConstraintAssociationRefProd; 00022 typedef edm::RefVector<TrackVtxConstraintAssociationCollection> TrackVtxConstraintAssociationRefVector; 00023 00024 #endif