/home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/daq/include/RAT/NoiseProc.hh Source File

Ratpac-two: /home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/daq/include/RAT/NoiseProc.hh Source File
Ratpac-two
NoiseProc.hh
1 #ifndef __RAT_NoiseProc__
2 #define __RAT_NoiseProc__
3 
4 #include <RAT/DS/PMTInfo.hh>
5 #include <RAT/PMTCharge.hh>
6 #include <RAT/PMTTime.hh>
7 #include <RAT/Processor.hh>
8 #include <map>
9 
10 namespace RAT {
11 
12 class NoiseProc : public Processor {
13  public:
14  NoiseProc();
15  virtual ~NoiseProc(){};
16  virtual Processor::Result DSEvent(DS::Root *ds);
17  void BeginOfRun(DS::Run *run);
18  void UpdatePMTModels(DS::PMTInfo *);
19 
20  void AddNoiseHit(DS::MCPMT *, DS::PMTInfo *, double);
21  int GenerateNoiseInWindow(DS::MC *, double, double, DS::PMTInfo *, std::map<int, int>);
22  std::map<double, double> FindWindows(std::vector<double> &times, double window);
23 
24  void SetD(std::string, double);
25  void SetI(std::string param, int value);
26 
27  protected:
28  double fDefaultNoiseRate;
29  double fLookback;
30  double fLookforward;
31  double fMaxTime;
32  int fNearHits;
33  int fNoiseFlag;
34  std::vector<RAT::PMTTime *> fPMTTime;
35  std::vector<RAT::PMTCharge *> fPMTCharge;
36  std::map<std::string, double> fModelNoiseMap;
37 };
38 
39 } // namespace RAT
40 
41 #endif
Definition: MCPMT.hh:21
Definition: MC.hh:30
Definition: PMTInfo.hh:19
Definition: Root.hh:39
Definition: Run.hh:22
Definition: NoiseProc.hh:12
void SetI(std::string param, int value)
Definition: NoiseProc.cc:270
void SetD(std::string, double)
Definition: NoiseProc.cc:252
virtual Processor::Result DSEvent(DS::Root *ds)
Definition: NoiseProc.cc:30
Definition: Processor.hh:36
Result
Definition: Processor.hh:59
Definition: CCCrossSecMessenger.hh:29