FairRoot/PandaRoot
PndMvdNoiseProducer.h
Go to the documentation of this file.
1 // -------------------------------------------------------------------------
2 // ----- PndMvdNoiseProducer header file -----
3 // ----- Created 01.07.08 by R.Kliemt -----
4 // -------------------------------------------------------------------------
5 
6 
15 #ifndef PNDMVDNOISEPRODUCER_H
16 #define PNDMVDNOISEPRODUCER_H
17 
18 #include <PndPersistencyTask.h>
19 #include "FairMCEventHeader.h"
20 
21 #include <vector>
22 
23 #include "TRandom.h"
24 //#include "PndMvdGeoPar.h"
25 #include "PndGeoHandling.h"
26 #include "PndSdsStripDigiPar.h"
27 #include "PndSdsPixelDigiPar.h"
28 #include "PndSdsTotDigiPar.h"
29 #include "PndSdsChargeConversion.h"
32 #include "PndSdsDigiStrip.h"
33 #include "PndSdsFE.h"
34 #include "TString.h"
35 
36 class TClonesArray;
37 
39 {
40  public:
41 
44 
46  virtual ~PndMvdNoiseProducer();
47 
48  PndMvdNoiseProducer(const PndMvdNoiseProducer& ) = delete;
50 
52  virtual void SetParContainers();
53  virtual InitStatus Init();
54 
55 
57  virtual void Exec(Option_t* opt);
58  virtual void FinishEvent();
59 
61 // Int_t CalcChanWhite(Int_t chanleft, Double_t frac);
62  Int_t CalcChargeAboveThreshold(Double_t spread, Double_t threshold);
64  void AddDigiStrip(Int_t &iStrip, Int_t iPoint, Int_t sensorID, Int_t fe, Int_t chan, Double_t charge);
65  void AddDigiPixel(Int_t &noisies, Int_t iPoint, Int_t sensorID, Int_t fe, Int_t col, Int_t row, Double_t charge);
66 
67  void FillSensorLists();
68 
69  void RunTimeBased(){fTimeOrderedDigi = kTRUE;}
70 
71  protected:
72 
74 
77  TClonesArray* fDigiStripArray;
78  TClonesArray* fDigiPixelArray;
79 
82 
87 
91 
93  FairMCEventHeader* fMCEventheader;
94 
95  std::vector<Int_t> fPixelIds2;
96  std::vector<Int_t> fPixelIds4;
97  std::vector<Int_t> fPixelIds5;
98  std::vector<Int_t> fPixelIds6;
99  std::vector<Int_t> fStripRectLIds;
100  std::vector<Int_t> fStripRectSIds;
101  std::vector<Int_t> fStripTrapIds;
102 
107 
109  Int_t fThreshold;
111 
112 // void Register();
113 
114 // void Reset();
115 
116 // void ProduceHits();
117 
118 
120 
121 };
122 
123 #endif
std::vector< Int_t > fPixelIds4
int row
Definition: anaLmdDigi.C:67
std::vector< Int_t > fPixelIds5
PndSdsTotDigiPar * fTotDigiParRect
PndSdsTotDigiPar * fTotDigiParPix
std::vector< Int_t > fPixelIds2
std::vector< Int_t > fStripRectSIds
virtual void SetParContainers()
void AddDigiPixel(Int_t &noisies, Int_t iPoint, Int_t sensorID, Int_t fe, Int_t col, Int_t row, Double_t charge)
int col
Definition: anaLmdDigi.C:67
PndSdsChargeConversion * fStripTrapChargeConv
std::vector< Int_t > fPixelIds6
Charge Digitization Parameter Class for SDS.
PndSdsDigiPixelWriteoutBuffer * fDigiPixelBuffer
Bool_t fTimeOrderedDigi
parameter to switch to time ordered simulation
PndSdsChargeConversion * fStripRectChargeConv
virtual InitStatus Init()
Class to access the naming information of the MVD.
void AddDigiStrip(Int_t &iStrip, Int_t iPoint, Int_t sensorID, Int_t fe, Int_t chan, Double_t charge)
TClonesArray * fDigiStripArray
PndSdsStripDigiPar * fDigiParTrap
Double_t
Double_t CalcReadoutCycles(Double_t clock)
std::vector< Int_t > fStripRectLIds
PndMvdNoiseProducer & operator=(const PndMvdNoiseProducer &)=delete
Digitization Parameter Class for MVD-Strip part.
PndSdsDigiStripWriteoutBuffer * fDigiStripBuffer
PndSdsStripDigiPar * fDigiParRect
double threshold
PndSdsChargeConversion * fPixChargeConv
TClonesArray * fDigiPixelArray
PndSdsPixelDigiPar * fDigiParPix
int fe
Definition: anaLmdDigi.C:67
std::vector< Int_t > fStripTrapIds
PndSdsChargeConversion * fCurrentChargeConv
PndSdsTotDigiPar * fTotDigiParTrap
virtual void Exec(Option_t *opt)
PndGeoHandling * fGeoH
FairMCEventHeader * fMCEventheader
Geometry name handling.
ClassDef(PndMvdNoiseProducer, 1)
Double_t CalcDistFraction(Double_t spread, Double_t threshold)
Int_t CalcChargeAboveThreshold(Double_t spread, Double_t threshold)
Digitization Parameter Class for SDS-Pixel part.