CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MultiHitGenerator.h
Go to the documentation of this file.
1 #ifndef MultiHitGenerator_H
2 #define MultiHitGenerator_H
3 
10 
13 
14 
15 class TrackingRegion;
16 namespace edm { class Event; class EventSetup; }
17 #include <vector>
18 
20 public:
21 
22  MultiHitGenerator(unsigned int size=500);
23 
24  virtual ~MultiHitGenerator() { }
25 
26  virtual const OrderedMultiHits & run(
27  const TrackingRegion& region, const edm::Event & ev, const edm::EventSetup& es) final;
28 
29  // temporary interface, for bckwd compatibility
30  virtual void hitSets( const TrackingRegion& reg, OrderedMultiHits & prs,
31  const edm::EventSetup& es){}
32 
33  virtual void hitSets( const TrackingRegion& reg, OrderedMultiHits & prs,
34  const edm::Event & ev, const edm::EventSetup& es) = 0;
35 
36  virtual void clear();
37 
38 private:
40 
41 protected:
42  using cacheHitPointer = std::unique_ptr<BaseTrackerRecHit>;
43  using cacheHits=std::vector<cacheHitPointer>;
44  cacheHits cache; // ownes what is by reference above...
45 
46 };
47 
48 
49 #endif
virtual ~MultiHitGenerator()
std::vector< cacheHitPointer > cacheHits
virtual void hitSets(const TrackingRegion &reg, OrderedMultiHits &prs, const edm::EventSetup &es)
virtual void clear()
OrderedMultiHits theHitSets
virtual const OrderedMultiHits & run(const TrackingRegion &region, const edm::Event &ev, const edm::EventSetup &es) final
MultiHitGenerator(unsigned int size=500)
std::unique_ptr< BaseTrackerRecHit > cacheHitPointer
tuple size
Write out results.