BmnRoot
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();
29 void Reset();
30 void Register(THttpServer* serv);
31 void SetDir(TFile* outFile, TTree* recoTree);
32 void DrawBoth();
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;
44 Int_t fSelectedStrip;
45 Int_t fSelectedSide;
46 Int_t fSelectedGain;
47 Int_t fSelectedTrigger;
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
62 TCanvas* canAmps;
63 TCanvas* canProf;
64 TCanvas* canZ2;
65 TCanvas* canv_proj_DH;
66 TCanvas* canv_proj_DL;
67 TCanvas* canv_proj_UH;
68 TCanvas* canv_proj_UL;
69 TCanvas* canSelect;
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
81 ClassDef(BmnHistHodo, 1)
82};
83
84#endif /* BMNHISTHodo_H */
BmnStatus
Definition BmnEnums.h:24
BmnStatus SetRefRun(Int_t id)
BmnHistHodo(TString title="Hodo", TString path="")
void SetDir(TFile *outFile, TTree *recoTree)
void CreateHistos()
void FillFromDigi(DigiArrays *fDigiArrays)
void Register(THttpServer *serv)
void SetSelection(Int_t Strip, Int_t Side, Int_t Gain, Int_t Trigger)
void ClearRefRun()
virtual ~BmnHistHodo()
void DrawBoth()
void Reset()