PandaRoot
BSEmcShashlykDigiPar.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 //#pragma once
14 #ifndef BSEMCSHASHLYKDIGIPAR_H
15 #define BSEMCSHASHLYKDIGIPAR_H
16 
17 #include "FairParGenericSet.h"
18 #include "FairParamList.h"
19 
20 #include "TString.h"
21 #include "TArrayD.h"
22 
27 class BSEmcShashlykDigiPar : public FairParGenericSet {
28  public:
29  static const std::string fgParameterName;
30 
31  BSEmcShashlykDigiPar(const char *name = "BSEmcShashlykDigiPar", const char *title = "Emc digi parameter", const char *context = "TestDefaultContext");
33 
34  /* signal generator */
35  Int_t GetUse_photon_statistic() { return fUse_photon_statistic; }
36  Double_t GetQuantumEfficiency() { return fQuantumEfficiency; }
37  Double_t GetExcessNoiseFactor() { return fExcessNoiseFactor; }
38  Double_t GetDetectedPhotonsPerMeV() { return fDetectedPhotonsPerMeV; }
39  Double_t GetSamplingFactor() { return fSamplingFactor; }
40 
41  Double_t GetTimeBeforeHit() { return fTimeBeforeHit; }
42  Double_t GetTimeAfterHit() { return fTimeAfterHit; }
43  Double_t GetActiveTimeIncrement() { return fActiveTimeIncrement; }
44  Double_t GetWfCutOffEnergy() { return fWfCutOffEnergy; } //GeV //0.001
45  Double_t GetSampleRate() { return fSampleRate; } //ns^-1 <-> GHz //0.08
46  Int_t GetNBits() { return fNBits; } //1 //14
47  Double_t GetEnCalib() { return fEnCalib; } //MeV/channel
48  Double_t GetPulseshapeMu() { return fPulseshapeMu; } //ns //68.7
49  Double_t GetPulseshapeSigma() { return fPulseshapeSigma; } //N //1.667
50  Double_t GetNoiseWidth() { return fNoiseWidth; }
51 
52  /* feature extraction */
53  Double_t GetCFFraction() { return fCF_fraction; }
54  Int_t GetCFTap() { return fCF_tap; }
55  Int_t GetCFNSamples() { return fCF_nsamples; }
56  const TArrayD& GetCFTCorr() { return fCF_tcorr; }
57  Int_t GetOFB0() { return fOF_b0; }
58  Int_t GetOFM() { return fOF_m; }
59  const TArrayD& GetOFA() { return fOF_a; }
60  const TArrayD& GetOFB() { return fOF_b; }
61  Double_t GetADCHitThreshold() { return fADCHitThreshold; }
62  Double_t GetEnergyDigiThreshold() { return fEnergyDigiThreshold; }
63 
64  void putParams(FairParamList *list);
65  Bool_t getParams(FairParamList *list);
66 
67 private :
68  // Empty method, WHY is this Called in constructor(FIXME)
69  //void clear(void){};
70 
71  Int_t fUse_photon_statistic;
72  Double_t fQuantumEfficiency;
73  Double_t fExcessNoiseFactor;
74  Double_t fDetectedPhotonsPerMeV;
75  Double_t fSamplingFactor;
76 
77  Double_t fTimeBeforeHit;
78  Double_t fTimeAfterHit;
79  Double_t fActiveTimeIncrement;
80  Double_t fWfCutOffEnergy;
81  Double_t fSampleRate;
82  Int_t fNBits;
83  Double_t fEnCalib;
84  Double_t fPulseshapeMu;
85  Double_t fPulseshapeSigma;
86  Double_t fNoiseWidth;
87 
88  Double_t fCF_fraction;
89  Int_t fCF_tap;
90  Int_t fCF_nsamples;
91  TArrayD fCF_tcorr;
92  Int_t fOF_b0;
93  Int_t fOF_m;
94  TArrayD fOF_a;
95  TArrayD fOF_b;
96  Double_t fADCHitThreshold;
97  Double_t fEnergyDigiThreshold;
98 
99  ClassDef(BSEmcShashlykDigiPar, 0)
100 };
101 
102 #endif /*BSEMCSHASHLYKDIGIPAR_H*/
static const std::string fgParameterName
const TArrayD & GetOFB()
parameter set of Emc digitisation
const TArrayD & GetCFTCorr()
const TArrayD & GetOFA()
Bool_t getParams(FairParamList *list)
void putParams(FairParamList *list)
BSEmcShashlykDigiPar(const char *name="BSEmcShashlykDigiPar", const char *title="Emc digi parameter", const char *context="TestDefaultContext")