BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnHistHodo.h
Go to the documentation of this file.
1#ifndef BMNHISTHodo_H
2#define BMNHISTHodo_H 1
3
4#include "BmnHist.h"
5#include "BmnHodoDigi.h"
6#include "BmnHodoRaw2Digit.h"
7#include "TCanvas.h"
8#include "TChain.h"
9#include "TClonesArray.h"
10#include "TColor.h"
11#include "TFile.h"
12#include "TFolder.h"
13#include "TH1F.h"
14#include "TH2F.h"
15#include "THttpServer.h"
16#include "TString.h"
17
18#include <TNamed.h>
19#define Hodo_ROWS 2
20#define Hodo_COLS 2
21#define coefHodo 1
22
23class BmnHistHodo : public BmnHist
24{
25 public:
26 BmnHistHodo(TString title = "Hodo", TString path = "");
27 virtual ~BmnHistHodo();
28 void CreateHistos();
29 void Reset();
30 void Register(THttpServer* serv);
31 void SetDir(TFile* outFile, TTree* recoTree);
32 void DrawBoth();
33 void ClearRefRun();
34 void FillFromDigi(DigiArrays* fDigiArrays);
36 void SetSelection(Int_t Strip, Int_t Side, Int_t Gain, Int_t Trigger);
37
38 private:
39 static constexpr int kNstrips = 24; // Hodo 2022. Strips numerated from 1 to 16 inclusive
40 static constexpr int kNsides = 2; // Hodo 2022. Strips have UP and DOWN readout sides
41 static constexpr int kNgains = 2; // Hodo 2022. Strips have HIGH and LOW gain readout channels
42
43 long int fEventCounter = 1;
48
49 TH2F* h2d_EstripUH; // amplitude in strips. Side UP gain HIGH
50 TH2F* h2d_EstripDH; // amplitude in strips. Side DOWN gain HIGH
51 TH2F* h2d_EstripUL; // amplitude in strips. Side UP gain LOW
52 TH2F* h2d_EstripDL; // amplitude in strips. Side DOWN gain LOW
53 TH1F* h1d_profileUH; // profile amplitude in strips. Side UP gain HIGH
54 TH1F* h1d_profileDH; // profile amplitude in strips. Side DOWN gain HIGH
55 TH1F* h1d_profileUL; // profile amplitude in strips. Side UP gain LOW
56 TH1F* h1d_profileDL; // profile amplitude in strips. Side DOWN gain LOW
57 TH1F* hStripSideGain; // amplitude in selected StripSideGain
58 TH1F* wfmStrip; // waveform in selected StripSideGain
59 TH1F* hZ2_hodo; // Z2
60 std::map<uint32_t, TH1*> vecProj{};
61
70 vector<PadInfo*> canAmpsPads;
71 vector<PadInfo*> canProfPads;
72 vector<PadInfo*> canZ2Pads;
73 std::map<uint32_t, PadInfo*> canv_proj_Pads{};
74 vector<PadInfo*> canSelectPads;
75 vector<TString> NamesAmps;
76 vector<TString> NamesProf;
77 vector<TString> NamesZ2;
78 std::map<uint32_t, TString> Namescanv_proj{};
79 vector<TString> NamesSelect;
80
82};
83
84#endif /* BMNHISTHodo_H */
int Int_t
#define ClassDef(name, id)
char * Strip(const char *str, char c=' ')
BmnStatus
Define status code.
Definition BmnEnums.h:93
Int_t fSelectedGain
Definition BmnHistHodo.h:46
BmnStatus SetRefRun(Int_t id)
virtual ~BmnHistHodo()
TH1F * hZ2_hodo
Definition BmnHistHodo.h:59
std::map< uint32_t, TH1 * > vecProj
Definition BmnHistHodo.h:60
BmnHistHodo(TString title="Hodo", TString path="")
vector< TString > NamesAmps
Definition BmnHistHodo.h:75
TCanvas * canAmps
Definition BmnHistHodo.h:62
vector< TString > NamesProf
Definition BmnHistHodo.h:76
TH1F * h1d_profileUL
Definition BmnHistHodo.h:55
TCanvas * canv_proj_DH
Definition BmnHistHodo.h:65
long int fEventCounter
Definition BmnHistHodo.h:43
TCanvas * canZ2
Definition BmnHistHodo.h:64
Int_t fSelectedTrigger
Definition BmnHistHodo.h:47
TCanvas * canSelect
Definition BmnHistHodo.h:69
std::map< uint32_t, TString > Namescanv_proj
Definition BmnHistHodo.h:78
std::map< uint32_t, PadInfo * > canv_proj_Pads
Definition BmnHistHodo.h:73
vector< TString > NamesSelect
Definition BmnHistHodo.h:79
TCanvas * canProf
Definition BmnHistHodo.h:63
vector< PadInfo * > canSelectPads
Definition BmnHistHodo.h:74
TCanvas * canv_proj_DL
Definition BmnHistHodo.h:66
TH2F * h2d_EstripUH
Definition BmnHistHodo.h:49
void SetDir(TFile *outFile, TTree *recoTree)
TH1F * h1d_profileUH
Definition BmnHistHodo.h:53
TH1F * h1d_profileDH
Definition BmnHistHodo.h:54
void CreateHistos()
TH2F * h2d_EstripDH
Definition BmnHistHodo.h:50
void FillFromDigi(DigiArrays *fDigiArrays)
void Register(THttpServer *serv)
vector< PadInfo * > canAmpsPads
Definition BmnHistHodo.h:70
vector< TString > NamesZ2
Definition BmnHistHodo.h:77
TH1F * hStripSideGain
Definition BmnHistHodo.h:57
Int_t fSelectedStrip
Definition BmnHistHodo.h:44
void SetSelection(Int_t Strip, Int_t Side, Int_t Gain, Int_t Trigger)
TH1F * wfmStrip
Definition BmnHistHodo.h:58
TH2F * h2d_EstripUL
Definition BmnHistHodo.h:51
Int_t fSelectedSide
Definition BmnHistHodo.h:45
vector< PadInfo * > canProfPads
Definition BmnHistHodo.h:71
TCanvas * canv_proj_UL
Definition BmnHistHodo.h:68
static constexpr int kNsides
Definition BmnHistHodo.h:40
void ClearRefRun()
TCanvas * canv_proj_UH
Definition BmnHistHodo.h:67
TH2F * h2d_EstripDL
Definition BmnHistHodo.h:52
vector< PadInfo * > canZ2Pads
Definition BmnHistHodo.h:72
static constexpr int kNstrips
Definition BmnHistHodo.h:39
static constexpr int kNgains
Definition BmnHistHodo.h:41
TH1F * h1d_profileDL
Definition BmnHistHodo.h:56
BmnHist(Int_t periodID=7, BmnSetup setup=kBMNSETUP)
Definition BmnHist.cxx:3