WhiteChannelNoiseService.h
Go to the documentation of this file.
1 // WhiteChannelNoiseService
2 //
3 // David Adams
4 // April 2016
5 // Implementation of TPC channel noise model with white noise.
6 // Same as the nose model 2 in SimWireDUNE35t, e.g. from dunetpc v04_29_01.
7 // FCL parameters:
8 // RandomSeed - Overrides NuRandomService if set nonzero.
9 // LogLevel - (0=none, 1=init only, ...)
10 
11 #ifndef WhiteChannelNoiseService_H
12 #define WhiteChannelNoiseService_H
13 
15 #include <vector>
16 #include <iostream>
17 
18 class TH1;
19 namespace CLHEP {
20 class HepRandomEngine;
21 }
22 
24 
25 public:
26 
27  // Ctor.
29 
30  // Dtor.
32 
33  // Add noise to a signal array.
34  int addNoise(detinfo::DetectorClocksData const& clockData,
35  detinfo::DetectorPropertiesData const& detProp,
36  Channel chan, AdcSignalVector& sigs) const;
37 
38  // Print the configuration.
39  std::ostream& print(std::ostream& out =std::cout, std::string prefix ="") const;
40 
41 private:
42 
43  // Configuration.
46 
47  // Histograms.
48  TH1* fNoiseHist; ///< distribution of noise counts
49 
50  CLHEP::HepRandomEngine* m_pran;
51 
52 };
53 
55 
56 #endif
std::string string
Definition: nybbler.cc:12
DECLARE_ART_SERVICE_INTERFACE_IMPL(MySharedService, art::test::MyServiceInterface, SHARED) DEFINE_ART_SERVICE_INTERFACE_IMPL(MySharedService
TH1 * fNoiseHist
distribution of noise counts
Contains all timing reference information for the detector.
std::vector< AdcSignal > AdcSignalVector
Definition: AdcTypes.h:22
CLHEP::HepRandomEngine * m_pran