CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
SiGaussianTailNoiseAdder.h
Go to the documentation of this file.
1 #ifndef _TRACKER_SIGAUSSIANTAILNOISEADDER_H
2 #define _TRACKER_SIGAUSSIANTAILNOISEADDER_H
3 
4 #include <memory>
5 
6 #include "SiNoiseAdder.h"
8 
13 namespace CLHEP {
14  class HepRandomEngine;
15  class RandGaussQ;
16 }
17 
19  public:
20  SiGaussianTailNoiseAdder(float,CLHEP::HepRandomEngine&);
22  void addNoise(std::vector<float>&, size_t&, size_t&, int, float) const;
23 
24  void addNoiseVR(std::vector<float> &, std::vector<float> &) const;
25  void addPedestals(std::vector<float> &, std::vector<float> &) const;
26  void addCMNoise(std::vector<float> &, float, std::vector<bool> &) const;
27  void addBaselineShift(std::vector<float> &, std::vector<bool> &) const;
28 
29  private:
30  const float threshold;
31  CLHEP::HepRandomEngine& rndEngine;
32  std::unique_ptr<CLHEP::RandGaussQ> gaussDistribution;
33  std::unique_ptr<GaussianTailNoiseGenerator> genNoise;
34 };
35 #endif
36 
CLHEP::HepRandomEngine & rndEngine
void addPedestals(std::vector< float > &, std::vector< float > &) const
std::unique_ptr< GaussianTailNoiseGenerator > genNoise
SiGaussianTailNoiseAdder(float, CLHEP::HepRandomEngine &)
void addNoiseVR(std::vector< float > &, std::vector< float > &) const
void addBaselineShift(std::vector< float > &, std::vector< bool > &) const
std::unique_ptr< CLHEP::RandGaussQ > gaussDistribution
void addNoise(std::vector< float > &, size_t &, size_t &, int, float) const
void addCMNoise(std::vector< float > &, float, std::vector< bool > &) const