CbmRoot
CbmMcbm2019CheckDigisSts.h
Go to the documentation of this file.
1 /********************************************************************************
2  * Copyright (C) 2014 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
3  * *
4  * This software is distributed under the terms of the *
5  * GNU Lesser General Public Licence (LGPL) version 3, *
6  * copied verbatim in the file "LICENSE" *
7  ********************************************************************************/
8 #ifndef CBMMCBM2019CHECKDIGISSTS_H
9 #define CBMMCBM2019CHECKDIGISSTS_H
10 
11 #include "CbmDefs.h"
12 
13 #include "FairTask.h"
14 
15 #include "TString.h"
16 
17 class TClonesArray;
18 class TH1;
19 class TH2;
20 class CbmDigiManager;
21 
22 class CbmMcbm2019CheckDigisSts : public FairTask {
23 public:
25 
28 
30  // CbmMcbm2019CheckDigisSts(Int_t verbose);
31 
32 
35 
36 
38  virtual InitStatus Init();
39 
41  virtual InitStatus ReInit();
42 
43 
45  virtual void Exec(Option_t*);
46 
48  virtual void SetParContainers();
49 
51  virtual void Finish();
52 
53  inline void SetTimeWindow(UInt_t uTsJump,
54  Double_t dFirstTsOffset,
55  UInt_t uPrevTs = 2,
56  UInt_t uPostTs = 2,
57  Double_t dTsLength = 10240000.) {
58  fuTsJump = uTsJump;
59  fdFirstTsOffs = dFirstTsOffset;
60  fuStartTs = uTsJump - uPrevTs;
61  fuStopTs = uTsJump + uPostTs;
62  fdTsLength = dTsLength;
63  fdStartTime = fuStartTs * dTsLength + dFirstTsOffset;
64  }
65  inline void SetDigiDistPlotStartTime(Double_t dStartTime) {
66  fdDigiDistStart = dStartTime;
67  fdDigiDistStop = dStartTime + 500000;
68  }
69 
70  inline void SetStsPulseradcLimits(UInt_t uMin, UInt_t uMax) {
71  fuMinAdcPulserSts = uMin;
72  fuMaxAdcPulserSts = uMax;
73  }
74 
75  inline void SetOutFilename(TString sNameIn) { fOutFileName = sNameIn; }
76 
77 private:
78  void CreateHistos();
79  void WriteHistos();
80 
81  static const UInt_t kuMaxNbAsics = 16;
82  static const UInt_t kuNbChansAsic = 128;
83 
84  CbmDigiManager* fDigiMan = nullptr;
85  UInt_t fNrTs = 0;
86  TH2* fSameChanDigisDistEvo = nullptr;
87 
88  UInt_t fuTsJump = 3;
89  Double_t fdFirstTsOffs = 0.0;
90  UInt_t fuStartTs = 0.0;
91  UInt_t fuStopTs = 0.0;
92  Double_t fdTsLength = 0.0;
93  Double_t fdStartTime = 0.0;
94 
95  Double_t fdDigiDistStart = 0.0;
96  Double_t fdDigiDistStop = 0.0;
97 
98  UInt_t fuMinAdcPulserSts = 5;
99  UInt_t fuMaxAdcPulserSts = 15;
100  TH2* fDigisPerAsicEvo = nullptr;
103 
104  TString fOutFileName {"data/CheckDigisSts.root"};
105 
107 };
108 
109 #endif // CBMMCBM2019CHECKDIGISSTS_H
CbmMcbm2019CheckDigisSts::fdTsLength
Double_t fdTsLength
Definition: CbmMcbm2019CheckDigisSts.h:92
CbmMcbm2019CheckDigisSts::kuMaxNbAsics
static const UInt_t kuMaxNbAsics
Definition: CbmMcbm2019CheckDigisSts.h:81
CbmMcbm2019CheckDigisSts::fDigiMan
CbmDigiManager * fDigiMan
Definition: CbmMcbm2019CheckDigisSts.h:84
CbmMcbm2019CheckDigisSts::CbmMcbm2019CheckDigisSts
CbmMcbm2019CheckDigisSts(const CbmMcbm2019CheckDigisSts &)=delete
CbmMcbm2019CheckDigisSts::fuMaxAdcPulserSts
UInt_t fuMaxAdcPulserSts
Definition: CbmMcbm2019CheckDigisSts.h:99
CbmMcbm2019CheckDigisSts::fdLastStsDigiPulser
Double_t fdLastStsDigiPulser[kuMaxNbAsics][kuNbChansAsic]
Definition: CbmMcbm2019CheckDigisSts.h:102
CbmMcbm2019CheckDigisSts::fdLastStsDigi
Double_t fdLastStsDigi[kuMaxNbAsics][kuNbChansAsic]
Definition: CbmMcbm2019CheckDigisSts.h:101
CbmMcbm2019CheckDigisSts
Definition: CbmMcbm2019CheckDigisSts.h:22
CbmMcbm2019CheckDigisSts::fuTsJump
UInt_t fuTsJump
Definition: CbmMcbm2019CheckDigisSts.h:88
CbmMcbm2019CheckDigisSts::SetDigiDistPlotStartTime
void SetDigiDistPlotStartTime(Double_t dStartTime)
Definition: CbmMcbm2019CheckDigisSts.h:65
CbmMcbm2019CheckDigisSts::~CbmMcbm2019CheckDigisSts
~CbmMcbm2019CheckDigisSts()
Definition: CbmMcbm2019CheckDigisSts.cxx:33
CbmMcbm2019CheckDigisSts::fuMinAdcPulserSts
UInt_t fuMinAdcPulserSts
Definition: CbmMcbm2019CheckDigisSts.h:98
CbmMcbm2019CheckDigisSts::fdStartTime
Double_t fdStartTime
Definition: CbmMcbm2019CheckDigisSts.h:93
CbmMcbm2019CheckDigisSts::fuStopTs
UInt_t fuStopTs
Definition: CbmMcbm2019CheckDigisSts.h:91
CbmMcbm2019CheckDigisSts::fSameChanDigisDistEvo
TH2 * fSameChanDigisDistEvo
Definition: CbmMcbm2019CheckDigisSts.h:86
CbmMcbm2019CheckDigisSts::ClassDef
ClassDef(CbmMcbm2019CheckDigisSts, 1)
CbmMcbm2019CheckDigisSts::fDigisPerAsicEvo
TH2 * fDigisPerAsicEvo
Definition: CbmMcbm2019CheckDigisSts.h:100
CbmMcbm2019CheckDigisSts::SetStsPulseradcLimits
void SetStsPulseradcLimits(UInt_t uMin, UInt_t uMax)
Definition: CbmMcbm2019CheckDigisSts.h:70
CbmMcbm2019CheckDigisSts::fOutFileName
TString fOutFileName
Definition: CbmMcbm2019CheckDigisSts.h:104
CbmDigiManager
CbmDigiManager.
Definition: CbmDigiManager.h:37
CbmMcbm2019CheckDigisSts::WriteHistos
void WriteHistos()
Definition: CbmMcbm2019CheckDigisSts.cxx:188
CbmMcbm2019CheckDigisSts::fdDigiDistStop
Double_t fdDigiDistStop
Definition: CbmMcbm2019CheckDigisSts.h:96
CbmMcbm2019CheckDigisSts::SetOutFilename
void SetOutFilename(TString sNameIn)
Definition: CbmMcbm2019CheckDigisSts.h:75
CbmMcbm2019CheckDigisSts::CbmMcbm2019CheckDigisSts
CbmMcbm2019CheckDigisSts()
Definition: CbmMcbm2019CheckDigisSts.cxx:29
CbmMcbm2019CheckDigisSts::kuNbChansAsic
static const UInt_t kuNbChansAsic
Definition: CbmMcbm2019CheckDigisSts.h:82
CbmMcbm2019CheckDigisSts::fNrTs
UInt_t fNrTs
Definition: CbmMcbm2019CheckDigisSts.h:85
CbmMcbm2019CheckDigisSts::Exec
virtual void Exec(Option_t *)
Definition: CbmMcbm2019CheckDigisSts.cxx:105
CbmMcbm2019CheckDigisSts::fdDigiDistStart
Double_t fdDigiDistStart
Definition: CbmMcbm2019CheckDigisSts.h:95
CbmMcbm2019CheckDigisSts::fdFirstTsOffs
Double_t fdFirstTsOffs
Definition: CbmMcbm2019CheckDigisSts.h:89
CbmMcbm2019CheckDigisSts::Init
virtual InitStatus Init()
Definition: CbmMcbm2019CheckDigisSts.cxx:48
CbmMcbm2019CheckDigisSts::SetTimeWindow
void SetTimeWindow(UInt_t uTsJump, Double_t dFirstTsOffset, UInt_t uPrevTs=2, UInt_t uPostTs=2, Double_t dTsLength=10240000.)
Definition: CbmMcbm2019CheckDigisSts.h:53
CbmMcbm2019CheckDigisSts::fuStartTs
UInt_t fuStartTs
Definition: CbmMcbm2019CheckDigisSts.h:90
CbmMcbm2019CheckDigisSts::operator=
CbmMcbm2019CheckDigisSts operator=(const CbmMcbm2019CheckDigisSts &)=delete
CbmMcbm2019CheckDigisSts::CreateHistos
void CreateHistos()
Definition: CbmMcbm2019CheckDigisSts.cxx:64
CbmMcbm2019CheckDigisSts::Finish
virtual void Finish()
Definition: CbmMcbm2019CheckDigisSts.cxx:186
CbmMcbm2019CheckDigisSts::ReInit
virtual InitStatus ReInit()
Definition: CbmMcbm2019CheckDigisSts.cxx:102
CbmMcbm2019CheckDigisSts::SetParContainers
virtual void SetParContainers()
Definition: CbmMcbm2019CheckDigisSts.cxx:36
CbmDefs.h