1 |
#ifndef STEERPLOTTER__
|
2 |
#define STEERPLOTTER__
|
3 |
#include <cstdlib>
|
4 |
#include <TObjArray.h>
|
5 |
#include <TArrayI.h>
|
6 |
#include <TArrayF.h>
|
7 |
#include <TString.h>
|
8 |
#include "BaseSteer.h"
|
9 |
|
10 |
|
11 |
class SteerPlotter: public BaseSteer {
|
12 |
|
13 |
public:
|
14 |
SteerPlotter();
|
15 |
virtual ~SteerPlotter();
|
16 |
|
17 |
virtual void Print(Option_t* option="") const;
|
18 |
|
19 |
void SetShapeNorm(Bool_t flag);
|
20 |
Bool_t GetShapeNorm();
|
21 |
|
22 |
void SetLumiNorm(Bool_t flag);
|
23 |
Bool_t GetLumiNorm();
|
24 |
|
25 |
void SetRatioPlot(Bool_t flag);
|
26 |
Bool_t GetRatioPlot();
|
27 |
|
28 |
void SetPortrait(Bool_t flag);
|
29 |
Bool_t GetPortrait();
|
30 |
|
31 |
void SetFitPtBalanceHists(Bool_t flag);
|
32 |
Bool_t GetFitPtBalanceHists();
|
33 |
|
34 |
void SetJetShapesPerSlice(Bool_t flag);
|
35 |
Bool_t GetJetShapesPerSlice();
|
36 |
|
37 |
void SetDrawEntries(Bool_t flag);
|
38 |
Bool_t GetDrawEntries();
|
39 |
|
40 |
void SetSampleNames(const char* in);
|
41 |
TObjArray* GetSampleNames();
|
42 |
|
43 |
void SetInputFiles(const char* in);
|
44 |
TObjArray* GetInputFiles();
|
45 |
|
46 |
void SetOutputPsFile(const char* in);
|
47 |
const char* GetOutputPsFile();
|
48 |
|
49 |
void SetCycleName(const char* in);
|
50 |
const char* GetCycleName();
|
51 |
|
52 |
void SetLegStrings(const char* in);
|
53 |
TObjArray* GetLegStrings();
|
54 |
|
55 |
void SetHistColors(const char* in);
|
56 |
TArrayI GetHistColors();
|
57 |
|
58 |
void SetHistMarkers(const char* in);
|
59 |
TArrayI GetHistMarkers();
|
60 |
|
61 |
void SetSamplesToStack(const char* in);
|
62 |
TObjArray* GetSamplesToStack();
|
63 |
|
64 |
void SetSamplesWeight(const char* in);
|
65 |
TArrayF GetSamplesWeight();
|
66 |
|
67 |
void SetSamplesUnc(const char* in);
|
68 |
TArrayF GetSamplesUnc();
|
69 |
|
70 |
void SetSubstractBkgd(Bool_t flag);
|
71 |
Bool_t GetSubstractBkgd();
|
72 |
|
73 |
void SetDrawLumi(Bool_t flag);
|
74 |
Bool_t GetDrawLumi();
|
75 |
|
76 |
void SetDrawLegend(Bool_t flag);
|
77 |
Bool_t GetDrawLegend();
|
78 |
|
79 |
void SetLumi(Float_t lumi);
|
80 |
Float_t GetLumi();
|
81 |
|
82 |
void SetSysError(Float_t err);
|
83 |
Float_t GetSysError();
|
84 |
|
85 |
void SetDoCumulative(Bool_t flag);
|
86 |
Bool_t GetDoCumulative();
|
87 |
|
88 |
void SetSingleEPS(Bool_t flag);
|
89 |
Bool_t GetSingleEPS();
|
90 |
|
91 |
private:
|
92 |
|
93 |
Bool_t bShapeNorm; // Shape normalization?
|
94 |
Bool_t bLumiNorm; // Lumi normalization?
|
95 |
Bool_t bRatioPlot; // plot ratios?
|
96 |
Bool_t bPortrait; // portrait or landscape
|
97 |
Bool_t bDrawEntries; // draw the number of entries?
|
98 |
Bool_t bDrawLumi; // draw the lumi information?
|
99 |
Bool_t bDrawLegend; // draw the legend everywhere?
|
100 |
Bool_t bFitPtBalanceHists; // fit Pt-balance histograms?
|
101 |
Bool_t bJetShapesPerSlice; // plot each slide of the jet shape histograms?
|
102 |
Bool_t bDoCumulative; // do cumulative distributions instead of normal plots
|
103 |
Bool_t bSingleEPS; // make one EPS file for each histogram
|
104 |
Int_t fNumOfSamples; // how many analysis samples should be plotted
|
105 |
Float_t fLumi; // integrated luminosity of sample
|
106 |
Float_t fSysError; // systematic error on normalisation
|
107 |
TObjArray fSampleNames; // all sample name
|
108 |
|
109 |
TObjArray fSamplesToStack; // name of samples that should be stacked on top of each other
|
110 |
Int_t fNumOfSamplesToStack; // how many samples should be stacked
|
111 |
Bool_t bSubstractBkgd; // substract all background samples?
|
112 |
|
113 |
TArrayF fSamplesWeight; // weights for the different samples
|
114 |
TArrayF fSamplesUnc; // uncertainty on the normalisation of various samples
|
115 |
|
116 |
TObjArray fInputFiles; // input filenames
|
117 |
TString fCycleName; // name of the cycle, can be used as prefix for the filenames
|
118 |
TString fOutputPsFile; // name of the resulting ps file
|
119 |
|
120 |
TArrayI fHistColors; // the histogram colors
|
121 |
TArrayI fHistMarkers; // the histogram markers
|
122 |
|
123 |
TObjArray fLegStrings; // legend entries
|
124 |
|
125 |
ClassDef(SteerPlotter,0) // steering class for the SFrame Plotter
|
126 |
|
127 |
};
|
128 |
|
129 |
#endif
|