CMS 3D CMS Logo

IteratedMedianCMNSubtractor.h
Go to the documentation of this file.
1 
2 #ifndef RECOLOCALTRACKER_SISTRIPZEROSUPPRESSION_SISTRIPITERATEDMEDIANCOMMONMODENOISESUBTRACTION_H
3 #define RECOLOCALTRACKER_SISTRIPZEROSUPPRESSION_SISTRIPITERATEDMEDIANCOMMONMODENOISESUBTRACTION_H
5 
7 
8 class SiStripNoises;
9 class SiStripQuality;
10 
12 
14 
15  public:
16 
17  void init(const edm::EventSetup& es) override;
18  void subtract(const uint32_t&,const uint16_t&, std::vector<int16_t>&) override;
19  void subtract(const uint32_t&,const uint16_t&, std::vector<float>&) override;
20 
21  private:
22 
23  template<typename T >void subtract_(const uint32_t&, const uint16_t&, std::vector<T>&);
24 inline float pairMedian( std::vector<std::pair<float,float> >& sample);
25 
26  IteratedMedianCMNSubtractor(double sigma, int iterations) :
27  cut_to_avoid_signal_(sigma),
28  iterations_(iterations),
29  noise_cache_id(0),
31  double cut_to_avoid_signal_;
36 
37 
38 };
39 #endif
40 
edm::ESHandle< SiStripNoises > noiseHandle
float pairMedian(std::vector< std::pair< float, float > > &sample)
void init(const edm::EventSetup &es) override
IteratedMedianCMNSubtractor(double sigma, int iterations)
void subtract(const uint32_t &, const uint16_t &, std::vector< int16_t > &) override
void subtract_(const uint32_t &, const uint16_t &, std::vector< T > &)
edm::ESHandle< SiStripQuality > qualityHandle