5#include "BmnNdetAddress.h"
11#include "THttpServer.h"
26 std::vector<PadInfo*>
pads;
37 :
canvas(std::exchange(other.canvas,
nullptr))
38 ,
pads(std::move(other.pads))
44 canvas = std::exchange(other.canvas,
nullptr);
45 pads = std::move(other.pads);
56 void SetDir(TFile* outFile, TTree* recoTree)
override;
67 void SetGeometry(
const std::string& path);
68 void InitializeAddresses();
69 void setupAxis(TH1* hist,
const std::string& xTitle,
const std::string& yTitle);
71 template<
typename T,
typename... Args>
72 T* createH1(Args&&... args);
74 template<
typename T,
typename... Args>
75 T* createH2(Args&&... args);
78 std::unique_ptr<BmnNdetGeo> fGeoHandler;
81 std::set<uint32_t> fAddresses;
84 std::map<uint32_t, TH1F*> hProfCell;
85 std::map<uint32_t, TH2F*> hCellAmpTime;
86 std::map<uint32_t, TH2F*> hLayerAmps;
89 TH1F* h1_ECells{
nullptr};
90 TH1F* h1_ProfileSlice{
nullptr};
92 TH2F* h2_grid{
nullptr};
93 TH2F* h2_Layer_Cell{
nullptr};
96 std::vector<TH1*> m_allHistograms;
99 std::vector<std::unique_ptr<CanvasInfo>> m_canvases;
102 bool fSelection{
false};
103 Int_t fSelectedTrigger{-1};
105 UInt_t fEventCounter{1};
107 static constexpr UInt_t kLAYRS = 2;
108 static constexpr UInt_t kROWS = 1;
109 static constexpr UInt_t kCOLS = 1;
115template<
typename T,
typename... Args>
116T* BmnHistHgnd::createH1(Args&&... args)
118 T* hist =
new T(std::forward<Args>(args)...);
119 m_allHistograms.push_back(hist);
123template<
typename T,
typename... Args>
124T* BmnHistHgnd::createH2(Args&&... args)
126 T* hist =
new T(std::forward<Args>(args)...);
127 m_allHistograms.push_back(hist);
void FillFromDigi(DigiArrays *fDigiArrays) override
void SetDir(TFile *outFile, TTree *recoTree) override
void SetSelection(Int_t Trigger)
void ClearRefRun() override
BmnHistHgnd(TString title, TString path, Int_t PeriodID, BmnSetup stp)
void Register(THttpServer *serv) override
BmnStatus SetRefRun(Int_t id)
CanvasInfo(CanvasInfo &&other) noexcept
std::vector< PadInfo * > pads
CanvasInfo & operator=(CanvasInfo &&other) noexcept
CanvasInfo(const CanvasInfo &)=delete
CanvasInfo & operator=(const CanvasInfo &)=delete