FairRoot/PandaRoot
PndSdsPixelDigiPar.cxx
Go to the documentation of this file.
1 #include <iostream>
2 #include "PndSdsPixelDigiPar.h"
3 
4 PndSdsPixelDigiPar::PndSdsPixelDigiPar(const char* name, const char* title, const char* context)
5 : FairParGenericSet(name,title,context),
6  fFeCols(0),
7  fFeRows(0),
8  fMaxFEperCol(10), // default initialization is 10, which is needed by MVD
9  fMaxFEperRow(10),
10  fDimX(0.),
11  fDimY(0.),
12  fRadius(0.),
13  fThreshold(0.),
14  fNoise(0.),
15  fCSigma(0.),
16  fFeBusClock(0.),
17  fChargeConvMethod(0),
18  fPixelSorterCellWidth(0.),
19  fPixelSorterNumberOfCells(0)
20 {
21  clear();
22 }
23 
24 void PndSdsPixelDigiPar::putParams(FairParamList* list)
25 {
26  if(!list) return;
27  list->add("dimX", fDimX);
28  list->add("dimY", fDimY);
29 
30  list->add("threshold", fThreshold);
31  list->add("noise", fNoise);
32  list->add("FECols", fFeCols);
33  list->add("FERows", fFeRows);
34  list->add("MaxFEperCol", fMaxFEperCol);
35  list->add("MaxFEperRow", fMaxFEperRow);
36  list->add("ClustRad",fRadius);
37  list->add("QCloudSigma",fCSigma);
38  list->add("fe_BusClock", fFeBusClock);
39 
40  list->add("chargeconv_method", fChargeConvMethod);
41 
42  list->add("PixelSorterCellWidth", fPixelSorterCellWidth);
43  list->add("PixelSorterNumberOfCells", fPixelSorterNumberOfCells);
44 
45  // list->add("sensName", sensName);
46  // list->add("feName", feName);
47 }
48 
50 {
51  if (!list) return kFALSE;
52  if (!list->fill("dimX",&fDimX)) return kFALSE;
53  if (!list->fill("dimY",&fDimY)) return kFALSE;
54  if (!list->fill("threshold",&fThreshold)) return kFALSE;
55  if (!list->fill("noise",&fNoise)) return kFALSE;
56  if (!list->fill("FECols",&fFeCols)) return kFALSE;
57  if (!list->fill("FERows",&fFeRows)) return kFALSE;
58  // retrieving the max col/row FE numbers is optional
59  list->fill("MaxFEperCol",&fMaxFEperCol);
60  list->fill("MaxFEperRow",&fMaxFEperRow);
61  if (!list->fill("ClustRad",&fRadius)) return kFALSE;
62  if (!list->fill("QCloudSigma",&fCSigma)) return kFALSE;
63  if (!list->fill("fe_BusClock",&fFeBusClock)) return kFALSE;
64  if (!list->fill("chargeconv_method",&fChargeConvMethod)) return kFALSE;
65  if (!list->fill("PixelSorterCellWidth", &fPixelSorterCellWidth)) return kFALSE;
66  if (!list->fill("PixelSorterNumberOfCells", &fPixelSorterNumberOfCells)) return kFALSE;
67 
68  // if (!list->fill("sensName",&sensName)) return kFALSE;
69  // if (!list->fill("feName",&feName)) return kFALSE;
70  return kTRUE;
71 }
72 
74 
76 {
77  out <<"SDS Pixel Digitization Parameters:"<<std::endl;
78  out <<" fDimX (cm) = "<<fDimX<<std::endl;
79  out <<" fDimY (cm) = "<<fDimY<<std::endl;
80  out <<" Charge Threshold (e-) = "<<fThreshold<<std::endl;
81  out <<" Noise (ENC+Dispersion) (e-) = "<<fNoise<<std::endl;
82  out <<" Columns on FE = "<<fFeCols<<std::endl;
83  out <<" Rows on FE = "<<fFeRows<<std::endl;
84  out <<" Max number of FE per col = "<<fMaxFEperCol<<std::endl;
85  out <<" Max number of FE per row = "<<fMaxFEperRow<<std::endl;
86  out <<" Cluster search radius (channels) = "<<fRadius<<std::endl;
87  out <<" Charge cloud sigma (cm) = "<<fCSigma<<std::endl;
88  out <<" charge conv. (0:ideal, 1:TOT) = "<<fChargeConvMethod<<std::endl;
89 }
PndSdsPixelDigiPar(const char *name="PndSdsParTest", const char *title="PndSds pixel digi parameter", const char *context="TestDefaultContext")
TFile * out
Definition: reco_muo.C:20
TString name
void putParams(FairParamList *list)
Bool_t getParams(FairParamList *list)
virtual void Print(std::ostream &out=std::cout) const
ClassImp(PndAnaContFact)
Digitization Parameter Class for SDS-Pixel part.