CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
TrackingRecHitPipe.h
Go to the documentation of this file.
1 #ifndef FastSimulation_TrackingRecHitProducer_TrackingRecHitPipe_H
2 #define FastSimulation_TrackingRecHitProducer_TrackingRecHitPipe_H
3 
6 
7 #include <vector>
8 
10 protected:
11  std::vector<TrackingRecHitAlgorithm*> _algorithms;
12 
13 public:
15 
17  for (unsigned int ialgo = 0; product && (ialgo < _algorithms.size()); ++ialgo) {
18  product = _algorithms[ialgo]->process(product);
19  }
20  return product;
21  }
22 
23  inline unsigned int size() const { return _algorithms.size(); }
24 
25  inline void addAlgorithm(TrackingRecHitAlgorithm* algorithm) { _algorithms.push_back(algorithm); }
26 };
27 
28 #endif
std::vector< TrackingRecHitAlgorithm * > _algorithms
void addAlgorithm(TrackingRecHitAlgorithm *algorithm)
unsigned int size() const
std::shared_ptr< TrackingRecHitProduct > TrackingRecHitProductPtr
TrackingRecHitProductPtr produce(TrackingRecHitProductPtr product) const