Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef RecoTracker_MkFit_MkFitEventOfHits_h
0002 #define RecoTracker_MkFit_MkFitEventOfHits_h
0003 
0004 #include <memory>
0005 
0006 namespace mkfit {
0007   class EventOfHits;
0008 }
0009 
0010 /**
0011  * The mkfit::EventOfHits is a container of mkfit::LayerOfHits
0012  * structures that mkFit uses to group (and index) hits. Having them
0013  * grouped together allows mkFit to pass them easily around top-level
0014  * steering functions.
0015  *
0016  * It has some conceptual similarities to MeasurementTrackerEvent.
0017  */
0018 class MkFitEventOfHits {
0019 public:
0020   MkFitEventOfHits();
0021   MkFitEventOfHits(std::unique_ptr<mkfit::EventOfHits>);
0022   ~MkFitEventOfHits();
0023 
0024   MkFitEventOfHits(MkFitEventOfHits const&) = delete;
0025   MkFitEventOfHits& operator=(MkFitEventOfHits const&) = delete;
0026   MkFitEventOfHits(MkFitEventOfHits&&);
0027   MkFitEventOfHits& operator=(MkFitEventOfHits&&);
0028 
0029   mkfit::EventOfHits& get() { return *eventOfHits_; }
0030   mkfit::EventOfHits const& get() const { return *eventOfHits_; }
0031 
0032 private:
0033   std::unique_ptr<mkfit::EventOfHits> eventOfHits_;
0034 };
0035 
0036 #endif