Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:28:12

0001 #ifndef RecoTracker_MkFit_MkFitHitWrapper_h
0002 #define RecoTracker_MkFit_MkFitHitWrapper_h
0003 
0004 #include "DataFormats/Provenance/interface/ProductID.h"
0005 
0006 #include <memory>
0007 #include <vector>
0008 
0009 namespace mkfit {
0010   class Hit;
0011   using HitVec = std::vector<Hit>;
0012 }  // namespace mkfit
0013 
0014 class MkFitHitWrapper {
0015 public:
0016   MkFitHitWrapper();
0017   ~MkFitHitWrapper();
0018 
0019   MkFitHitWrapper(MkFitHitWrapper const&) = delete;
0020   MkFitHitWrapper& operator=(MkFitHitWrapper const&) = delete;
0021   MkFitHitWrapper(MkFitHitWrapper&&);
0022   MkFitHitWrapper& operator=(MkFitHitWrapper&&);
0023 
0024   void setClustersID(edm::ProductID id) { clustersID_ = id; }
0025   edm::ProductID clustersID() const { return clustersID_; }
0026 
0027   mkfit::HitVec& hits() { return hits_; }
0028   mkfit::HitVec const& hits() const { return hits_; }
0029 
0030 private:
0031   // Vector is indexed by the cluster index
0032   mkfit::HitVec hits_;
0033   edm::ProductID clustersID_;
0034 };
0035 
0036 #endif