BmnRoot
Loading...
Searching...
No Matches
BmnHist.h
Go to the documentation of this file.
1
2#ifndef BMNHIST_H
3#define BMNHIST_H 1
4
5#include "BmnEventHeader.h"
6#include "DigiArrays.h"
7#include "TCanvas.h"
8#include "TChain.h"
9#include "TFile.h"
10#include "TFolder.h"
11#include "TH1D.h"
12#include "TH1F.h"
13#include "TH2F.h"
14#include "THStack.h"
15#include "THttpServer.h"
16#include "TString.h"
17
18#include <BmnPadBranch.h>
19#include <PadInfo.h>
20#include <TNamed.h>
21#include <stdlib.h>
22#include <vector>
23
24#define PAD_WIDTH 512
25#define PAD_HEIGHT 384
26
27using std::unique_ptr;
28using std::vector;
29
33class BmnHist : public TNamed
34{
35 public:
36 BmnHist(Int_t periodID = 7, BmnSetup setup = kBMNSETUP);
37 virtual ~BmnHist();
38 virtual void Reset() = 0;
39 virtual void Register(THttpServer* serv) = 0;
40 virtual void SetDir(TFile* outFile = NULL, TTree* recoTree = NULL) = 0;
41 virtual void DrawBoth() = 0;
42 virtual void FillFromDigi(DigiArrays* fDigiArrays) = 0;
43 virtual void ClearRefRun() = 0;
44 // virtual BmnStatus LoadRefRun(TString FileName) = 0;
45 // template <class HH>
46 static void DrawRef(unique_ptr<TCanvas>& canGemStrip, vector<PadInfo*>* canGemStripPads);
47 static void DrawRef(TCanvas* canGemStrip, vector<PadInfo*>* canGemStripPads);
48 static void DrawPad(TVirtualPad* pad, PadInfo* info);
49 static void FillPad(PadInfo* info, TTree* tree);
51 TString FullName,
52 TString fTitle,
53 vector<PadInfo*> canPads,
54 vector<TString> Names);
55 static BmnStatus LoadRefRun(Int_t refID, TString FullName, TString fTitle, vector<PadInfo*> canPads);
57 static void ResetPadTree(BmnPadBranch* br);
58 static BmnStatus FillPadFromTree(BmnPadBranch* br, TTree* tree);
59 static void SetHistStyleTH1(TH1* h);
60
61 void SetRefRunName(TString v) { this->refRunName = v; }
62
63 TString GetRefRunName() const { return refRunName; }
64
65 void SetRefID(Int_t v) { this->refID = v; }
66
67 Int_t GetRefID() const { return refID; }
68
69 void SetRefPath(TString v) { this->refPath = v; }
70
71 TString GetRefPath() const { return refPath; }
72
73 void SetPeriodID(Int_t v) { this->fPeriodID = v; }
74
75 Int_t GetPeriodID() const { return fPeriodID; }
76
77 void SetBmnSetup(BmnSetup v) { this->fSetup = v; }
78
79 BmnSetup GetBmnSetup() const { return fSetup; }
80
81 void SetShow(Bool_t v) { this->isShown = v; }
82
83 Bool_t GetShow() const { return isShown; }
84
85 protected:
86 Bool_t isShown;
87 THttpServer* fServer;
88 TTree* frecoTree;
89 TDirectory* fDir;
90 TString refPath;
91 TString refRunName;
92 Int_t refID;
93 TFile* refFile;
94 Int_t fPeriodID;
96
97 ClassDef(BmnHist, 1)
98};
99
100#endif /* BMNHIST_H */
__m128 v
Definition P4_F32vec4.h:1
BmnStatus
Definition BmnEnums.h:24
BmnSetup
Definition BmnEnums.h:89
@ kBMNSETUP
Definition BmnEnums.h:90
Int_t GetRefID() const
Definition BmnHist.h:67
Int_t fPeriodID
Definition BmnHist.h:94
TTree * frecoTree
Definition BmnHist.h:88
void SetShow(Bool_t v)
Definition BmnHist.h:81
static void ResetPadTree(BmnPadBranch *br)
static BmnStatus LoadRefRun(Int_t refID, TString FullName, TString fTitle, vector< PadInfo * > canPads)
Int_t refID
Definition BmnHist.h:92
Bool_t isShown
Definition BmnHist.h:86
TString refPath
Definition BmnHist.h:90
virtual void ClearRefRun()=0
virtual ~BmnHist()
TDirectory * fDir
Definition BmnHist.h:89
TString GetRefPath() const
Definition BmnHist.h:71
Bool_t GetShow() const
Definition BmnHist.h:83
TString GetRefRunName() const
Definition BmnHist.h:63
static BmnStatus DrawPadFromTree(BmnPadBranch *br)
static void DrawRef(TCanvas *canGemStrip, vector< PadInfo * > *canGemStripPads)
void SetBmnSetup(BmnSetup v)
Definition BmnHist.h:77
virtual void FillFromDigi(DigiArrays *fDigiArrays)=0
static void FillPad(PadInfo *info, TTree *tree)
virtual void DrawBoth()=0
static void DrawPad(TVirtualPad *pad, PadInfo *info)
BmnSetup GetBmnSetup() const
Definition BmnHist.h:79
virtual void SetDir(TFile *outFile=NULL, TTree *recoTree=NULL)=0
BmnSetup fSetup
Definition BmnHist.h:95
static void SetHistStyleTH1(TH1 *h)
void SetRefID(Int_t v)
Definition BmnHist.h:65
virtual void Register(THttpServer *serv)=0
Int_t GetPeriodID() const
Definition BmnHist.h:75
void SetRefRunName(TString v)
Definition BmnHist.h:61
static void DrawRef(unique_ptr< TCanvas > &canGemStrip, vector< PadInfo * > *canGemStripPads)
TString refRunName
Definition BmnHist.h:91
void SetPeriodID(Int_t v)
Definition BmnHist.h:73
THttpServer * fServer
Definition BmnHist.h:87
static BmnStatus FillPadFromTree(BmnPadBranch *br, TTree *tree)
TFile * refFile
Definition BmnHist.h:93
void SetRefPath(TString v)
Definition BmnHist.h:69
virtual void Reset()=0
BmnHist(Int_t periodID=7, BmnSetup setup=kBMNSETUP)
static BmnStatus LoadRefRun(Int_t refID, TString FullName, TString fTitle, vector< PadInfo * > canPads, vector< TString > Names)
Node of pad tree.
Storage for pad content and it's options.
Definition PadInfo.h:20
Definition setup.py:1