Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:05:22

0001 #ifndef TrackReco_TrackFwd_h
0002 #define TrackReco_TrackFwd_h
0003 
0004 #include <vector>
0005 #include "DataFormats/Common/interface/Ref.h"
0006 #include "DataFormats/Common/interface/RefProd.h"
0007 #include "DataFormats/Common/interface/RefVector.h"
0008 #include "DataFormats/Common/interface/RefToBase.h"
0009 #include "DataFormats/Common/interface/RefToBaseVector.h"
0010 #include "DataFormats/Common/interface/Association.h"
0011 
0012 namespace reco {
0013 
0014   class Track;
0015 
0016   /// collection of Tracks

0017   typedef std::vector<Track> TrackCollection;
0018 
0019   /// persistent reference to a Track

0020   typedef edm::Ref<TrackCollection> TrackRef;
0021 
0022   /// association to a track collection

0023   typedef edm::Association<TrackCollection> TrackAssociation;
0024 
0025   /// persistent reference to a Track collection

0026   typedef edm::RefProd<TrackCollection> TrackRefProd;
0027 
0028   /// vector of reference to Track in the same collection

0029   typedef edm::RefVector<TrackCollection> TrackRefVector;
0030 
0031   /// iterator over a vector of reference to Track in the same collection

0032   typedef TrackRefVector::iterator track_iterator;
0033 
0034   /// persistent reference to a Track, using views

0035   typedef edm::RefToBase<reco::Track> TrackBaseRef;
0036 
0037   /// vector of persistent references to a Track, using views

0038   typedef edm::RefToBaseVector<reco::Track> TrackBaseRefVector;
0039 
0040 }  // namespace reco

0041 
0042 #endif