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 
14 
15 
16 class TrackingRegion;
17 namespace edm { class Event; class EventSetup; }
18 #include <vector>
19 
21 public:
22 
23  MultiHitGenerator(unsigned int size=400) : localRA(size){}
25 
26 
27  virtual ~MultiHitGenerator() { }
28 
29  virtual const OrderedMultiHits & run(
30  const TrackingRegion& region, const edm::Event & ev, const edm::EventSetup& es) final;
31 
32  // temporary interface, for bckwd compatibility
33  virtual void hitSets( const TrackingRegion& reg, OrderedMultiHits & prs,
34  const edm::EventSetup& es){}
35 
36  virtual void hitSets( const TrackingRegion& reg, OrderedMultiHits & prs,
37  const edm::Event & ev, const edm::EventSetup& es) = 0;
38 
39  virtual void clear();
40 
41 private:
43 
44 protected:
45  using cacheHitPointer = std::unique_ptr<BaseTrackerRecHit>;
46  using cacheHits=std::vector<cacheHitPointer>;
47  cacheHits cache; // ownes what is by reference above...
49 };
50 
51 
52 #endif
virtual ~MultiHitGenerator()
std::vector< cacheHitPointer > cacheHits
virtual void hitSets(const TrackingRegion &reg, OrderedMultiHits &prs, const edm::EventSetup &es)
virtual void clear()
OrderedMultiHits theHitSets
MultiHitGenerator(MultiHitGenerator const &other)
bool ev
virtual const OrderedMultiHits & run(const TrackingRegion &region, const edm::Event &ev, const edm::EventSetup &es) final
edm::RunningAverage localRA
MultiHitGenerator(unsigned int size=400)
std::unique_ptr< BaseTrackerRecHit > cacheHitPointer
tuple size
Write out results.