CbmRoot
Loading...
Searching...
No Matches
CbmTrdHitDensityQa.h
Go to the documentation of this file.
1/* Copyright (C) 2011-2018 Institut fuer Kernphysik, Westfaelische Wilhelms-Universitaet Muenster, Muenster
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Cyrano Bergmann [committer], Florian Uhlig */
4
5#ifndef CBMTRDHITDENSITYQA_H_
6#define CBMTRDHITDENSITYQA_H_
7
8#include "FairTask.h"
9
10// #include "CbmTrdDigitizerMathieson.h"
11// #include "CbmTrdHitProducerCluster.h"
12// #include "TLegend.h"
13// #include "TClonesArray.h"
14// #include "TSystem.h"
15// #include "TVector3.h"
16// #include <vector>
17#include <list>
18// #include <map>
19#include <fstream>
20
23class CbmTrdParSetGeo;
25class TH2I;
26class TH1I;
27class TH1D;
28class TH1F;
29class TClonesArray;
30
31// typedef std::list<MyPoint*> MyPointList;
32// typedef std::map<Int_t, MyPointList*> MyPointListMap;
33
34class CbmTrdHitDensityQa : public FairTask {
35 public:
36 // ---- Default constructor -------------------------------------------
38 CbmTrdHitDensityQa(Double_t TriggerThreshold, Double_t EventRate, Double_t ScaleCentral2mBias);
39 // ---- Destructor ----------------------------------------------------
40 virtual ~CbmTrdHitDensityQa();
42 virtual InitStatus ReInit();
43 virtual InitStatus Init();
44 virtual void SetParContainers();
45
47 virtual void Exec(Option_t* option);
48
54 virtual void FinishEvent();
55
57 virtual void Finish();
58 void Register();
59 void SetTriggerThreshold(Double_t triggerthreshold);
60 void SetNeighbourTrigger(Bool_t trigger);
61 void SetPlotResults(Bool_t plotResults);
62 void SetScaleCentral2mBias(Double_t scaling);
63 void SetTriggerMaxScale(Double_t max);
64 void SetTriggerMinScale(Double_t min);
65 void SetLogScale(Bool_t logScale);
66 void SetRatioTwoFiles(Bool_t ratioPlot);
67
68 private:
69 Double_t TriggerRate2DataRate(Double_t triggerrate);
70 Double_t DataRate2TriggerRate(Double_t datarate);
71 Double_t TriggerCount2TriggerRate(Double_t count);
72 Double_t TriggerRate2TriggerCount(Double_t rate);
73
74 std::ofstream myfile;
75
76 Double_t fmin, fmax;
77 Bool_t flogScale;
78 Double_t fBitPerHit;
81
85
86 TClonesArray* fClusters;
87
92
93 Int_t fStation;
94 Int_t fLayer;
95 Int_t fModuleID;
96
98
99 Double_t fTriggerThreshold; // SIS300:1E-6
100 Double_t fEventRate; //SIS300:1E7
101 Double_t fScaleCentral2mBias; //SIS300:1/4
102
103 std::map<Int_t, Int_t> fUsedDigiMap;
104 std::map<Int_t, TH2I*> fModuleHitMap;
105 std::map<Int_t, TH2I*>::iterator fModuleHitMapIt;
106 std::map<Int_t, TH1D*> fModuleHitASICMap;
107 std::map<Int_t, TH1D*>::iterator fModuleHitASICMapIt;
110
112};
113#endif
void SetNeighbourTrigger(Bool_t trigger)
void SetRatioTwoFiles(Bool_t ratioPlot)
CbmTrdParSetGeo * fGeoPar
ClassDef(CbmTrdHitDensityQa, 3)
Double_t TriggerRate2TriggerCount(Double_t rate)
std::map< Int_t, Int_t > fUsedDigiMap
virtual void Exec(Option_t *option)
CbmTrdParSetDigi * fDigiPar
void SetTriggerMinScale(Double_t min)
CbmTrdGeoHandler * fGeoHandler
CbmTrdHitDensityQa & operator=(const CbmTrdHitDensityQa &)
TClonesArray * fClusters
CbmTrdHitDensityQa(const CbmTrdHitDensityQa &)
void SetPlotResults(Bool_t plotResults)
CbmTrdParSetAsic * fAsicPar
Double_t TriggerCount2TriggerRate(Double_t count)
void SetTriggerThreshold(Double_t triggerthreshold)
std::map< Int_t, TH2I * >::iterator fModuleHitMapIt
std::map< Int_t, TH1D * >::iterator fModuleHitASICMapIt
void SetLogScale(Bool_t logScale)
Double_t DataRate2TriggerRate(Double_t datarate)
std::map< Int_t, TH1D * > fModuleHitASICMap
virtual InitStatus Init()
std::map< Int_t, TH2I * > fModuleHitMap
virtual InitStatus ReInit()
void SetTriggerMaxScale(Double_t max)
Double_t TriggerRate2DataRate(Double_t triggerrate)
void SetScaleCentral2mBias(Double_t scaling)
virtual void SetParContainers()
Describe TRD module ASIC settings (electronic gain, delays, etc)