PandaRoot
PndSdsStripDigiPar.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 //
14 // C++ Interface: PndSdsStripDigiPar
15 //
16 #ifndef PNDSDSSTRIPDIGIPAR_H
17 #define PNDSDSSTRIPDIGIPAR_H
18 
19 #include <TVector2.h>
20 // #include <TString.h>
21 #include <TObjString.h>
22 
23 #include "FairParGenericSet.h"
24 #include "FairParamList.h"
25 
27 class PndSdsStripDigiPar : public FairParGenericSet {
28  public:
29  PndSdsStripDigiPar(const char *name = "PndSdsParTest", const char *title = "PndSds strip digi parameter", const char *context = "TestDefaultContext");
31  void clear(void){};
32  void putParams(FairParamList *list);
33  Bool_t getParams(FairParamList *list);
34 
35  void Print();
37  Double_t GetTopPitch() const { return fTopPitch; }
38  Double_t GetBotPitch() const { return fBotPitch; }
39  Double_t GetOrient() const { return fOrient; }
40  Double_t GetSkew() const { return fSkew; }
41  TVector2 GetTopAnchor() const { return fTopAnchor; }
42  TVector2 GetBotAnchor() const { return fBotAnchor; }
43  Int_t GetNrTopFE() const { return fTopNrFE; }
44  Int_t GetNrBotFE() const { return fBotNrFE; }
45  Int_t GetNrFECh() const { return fFeChannels; }
46  Double_t GetThreshold() const { return fThreshold; }
47  Double_t GetNoise() const { return fNoise; }
48  Double_t GetQCloudSigma() const { return fCSigma; }
49  const char *GetSensType() const { return fSensType.Data(); }
50  const char *GetFeType() const { return fFeType.Data(); }
51  Double_t GetFeBusClock() const { return fFeBusClock; }
52  Int_t GetClusterMod() const { return fClusterMod; }
53  Int_t GetClusterMean() const { return fClusterMean; }
54  Int_t GetRadChannel() const { return fRadChannel; }
55  Int_t GetRadTime() const { return fRadTime; }
56  Double_t GetChargeCut() const { return fChargeCut; }
57  Double_t GetSingleChargeCut() const { return fSingleChargeCut; }
58  Int_t GetChargeConvMethod() const { return fChargeConvMethod; }
59 
60  void SetTopPitch(Double_t x) { fTopPitch = x; }
61  void SetBotPitch(Double_t x) { fBotPitch = x; }
62  void SetOrient(Double_t x) { fOrient = x; }
63  void SetSkew(Double_t x) { fSkew = x; }
64  void SetTopAnchor(TVector2 x) { fTopAnchor = x; }
65  void SetBotAnchor(TVector2 x) { fBotAnchor = x; }
66  void SetNrTopFE(Int_t x) { fTopNrFE = x; }
67  void SetNrBotFE(Int_t x) { fBotNrFE = x; }
68  void SetNrFECh(Int_t x) { fFeChannels = x; }
69  void SetThreshold(Double_t x) { fThreshold = x; }
70  void SetNoise(Double_t x) { fNoise = x; }
71  void SetQCloudSigma(Double_t x) { fCSigma = x; }
72  void SetSensType(TString x) { fSensType = x; }
73  void SetFeType(TString x) { fFeType = x; }
74  void SetFeBusClock(Double_t x) { fFeBusClock = x; }
75  void SetClusterMod(Int_t x) { fClusterMod = x; }
76  void SetClusterMean(Int_t x) { fClusterMean = x; }
77  void SetRadChnnel(Int_t x) { fRadChannel = x; }
78  void SetRadTime(Int_t x) { fRadTime = x; }
79  void SetChargeCut(Double_t x) { fChargeCut = x; }
80  void SetSingleChargeCut(Double_t x) { fSingleChargeCut = x; }
81  void SetChargeConvMethod(Int_t x) { fChargeConvMethod = x; }
82 
83  private:
84  // Strip Parameters
85  Double_t fTopPitch; // Strip pitch on top wafer side
86  Double_t fBotPitch; // Strip pitch on bottom wafer side
87  Double_t fOrient; // orientation angle of top strips
88  Double_t fSkew; // skew angle of bottom strips wrt top strips
89  Double_t fThreshold; // Discriminator threshold
90  Double_t fNoise; // Complete noise including threshold dispersion
91  Double_t fCSigma; // Gaussian charge cloud sigma
92  Double_t fChargeCut; // Cluster charge corralation for double sided sensors
93  Double_t fSingleChargeCut; // Charge Threshold for single-strip clusters
94  Double_t fFeBusClock; // Frontend bus clock to determin noise rate
95  TVector2 fTopAnchor; // Anchor point of top strip#0
96  TVector2 fBotAnchor; // Anchor point of bottom strip#0
97  Int_t fFeChannels; // Number of Channels per FE
98  Int_t fTopNrFE; // Number of FE attached to top wafer side
99  Int_t fBotNrFE; // Number of FE attached to bottom wafer side
100  Int_t fClusterMod; // Clusterfinder mode: 1,2,3,4,5
101  Int_t fClusterMean; // Clusterfinder mean Algo: 0,1
102  Int_t fRadChannel; // Clusterfinder channel search radius
103  Int_t fRadTime; // Clusterfinder timing search radius
104  TString fSensType; // Sensor type name (rect, trap...)
105  TString fFeType; // Frontend type name (APV25, CBM-XYTER, ...)
106  Int_t fChargeConvMethod; // 0: ideal conversion; 1: TOT calculation
107 
108  ClassDef(PndSdsStripDigiPar, 4);
109 };
110 
111 #endif /* !PNDSDSSTRIPDIGIPAR_H*/
void SetOrient(Double_t x)
Double_t GetTopPitch() const
void SetChargeConvMethod(Int_t x)
void SetRadTime(Int_t x)
const char * GetSensType() const
Double_t GetFeBusClock() const
void SetNrBotFE(Int_t x)
void SetClusterMean(Int_t x)
Double_t GetQCloudSigma() const
void SetBotPitch(Double_t x)
Double_t GetBotPitch() const
void SetTopPitch(Double_t x)
void putParams(FairParamList *list)
void SetChargeCut(Double_t x)
Int_t GetRadChannel() const
TVector2 GetTopAnchor() const
Int_t GetChargeConvMethod() const
void SetSingleChargeCut(Double_t x)
Double_t GetNoise() const
void SetBotAnchor(TVector2 x)
Int_t GetClusterMean() const
void SetNoise(Double_t x)
void SetTopAnchor(TVector2 x)
Digitization Parameter Class for MVD-Strip part.
Double_t GetSkew() const
Double_t GetSingleChargeCut() const
void SetNrFECh(Int_t x)
Int_t GetClusterMod() const
void SetClusterMod(Int_t x)
void SetQCloudSigma(Double_t x)
void SetSensType(TString x)
Int_t GetNrBotFE() const
Int_t GetNrFECh() const
Double_t GetOrient() const
void SetRadChnnel(Int_t x)
void SetNrTopFE(Int_t x)
Int_t GetNrTopFE() const
void SetFeType(TString x)
Int_t GetRadTime() const
TVector2 GetBotAnchor() const
const char * GetFeType() const
void SetFeBusClock(Double_t x)
void SetThreshold(Double_t x)
Bool_t getParams(FairParamList *list)
Double_t GetThreshold() const
void SetSkew(Double_t x)
PndSdsStripDigiPar(const char *name="PndSdsParTest", const char *title="PndSds strip digi parameter", const char *context="TestDefaultContext")
Double_t GetChargeCut() const