source: fact/tools/rootmacros/PulseTemplates/pixel.h@ 13637

Last change on this file since 13637 was 13635, checked in by Jens Buss, 13 years ago
added function CsvFileName
File size: 3.9 KB
Line 
1/** A one line description of the class.
2 *
3 * #include "XX.h" <BR>
4 * -llib
5 *
6 * A longer description.
7 *
8 * @see something
9 */
10
11#ifndef PIXEL_H
12#define PIXEL_H
13
14// SYSTEM INCLUDES
15
16#include <TROOT.h>
17#include <TProfile.h>
18#include <TH2F.h>
19#include <TH1I.h>
20#include <TH1F.h>
21#include <TString.h>
22
23//
24
25// PROJECT INCLUDES
26//
27//#include "rootfilehandler.h"
28//#include "rootfilehandler.C"
29
30// LOCAL INCLUDES
31//
32
33// FORWARD REFERENCES
34//
35
36
37class Pixel
38{
39public:
40// LIFECYCLE
41
42 /** Default constructor.
43 */
44 Pixel(
45 int pixelID,
46 int maxPulsorder,
47 int verbosityLevel,
48 bool stats,
49 TFile* filename
50 );
51
52 Pixel(
53 int pixelID,
54 int maxPulsorder,
55 int verbosityLevel,
56 bool stats,
57 TFile* filename,
58 int pixelOverlayXaxisLeft,
59 int pixelOverlayXaxisRight,
60 float bSLMean,
61 float gainMean,
62 TString options
63 );
64
65
66 // /** Copy constructor.
67 // *
68 // * @param from The value to copy to this object.
69 // */
70
71
72 /** Destructor.
73 */
74 ~Pixel();
75
76
77// OPERATORS
78
79// /** Assignment operator.
80// *
81// * @param from THe value to assign to this object.
82// *
83// * @return A reference to this object.
84// */
85// XX& operator=(const XX& from);
86
87// OPERATIONS
88
89 //Histogram Booking
90 void BookPixelHistos();
91 void BookDistributionHistos();
92 void BookTemplateHistos();
93 void BookEdgeTemplateHistos();
94
95 //Histogram Drawing
96 void DrawOverlayHistograms(
97 TCanvas **pixelCanvas, //Array of Canvases
98 int *histoFrameNR //Array with Canvas Frame numbers
99 );
100 void DrawDistributionHistograms(
101 TCanvas **pixelCanvas, //Array of Canvases
102 int *histoFrameNr //Array with Canvas Frame numbers
103 );
104 void DrawTemplateHistograms(
105 TCanvas **pixelCanvas, //Array of Canvases
106 int *histoFrameNr //Array with Canvas Frame numbers
107 );
108 void DrawEdgeTemplateHistograms(
109 TCanvas **pixelCanvas, //Array of Canvases
110 int *histoFrameNr //Array with Canvas Frame numbers
111 );
112
113 //Histogram deletion
114 void DeletePixelHistos();
115 void DeleteDistributionHistos();
116 void DeleteTemplateHistos();
117 void DeleteEdgeTemplateHistos();
118
119 //File Handling
120 void SavePixelHistograms(TString loc_fname, bool);
121 void LoadPulseHistos( );
122
123 //File Handling Service Functions
124 TString HistoTitle(TString, int );
125 TString HistoName(TString, int);
126 TString CsvFileName(TString, TString, int );
127
128// ACCESS
129// INQUIRY
130 int mChid;
131 bool mStats;
132 int mMaxPulseOrder;
133 int mVerbosityLevel;
134 int mPixelOverlayXaxisLeft;
135 int mPixelOverlayXaxisRight;
136 float mBSLMean;
137 float mGainMean;
138 TString mOptions;
139
140 //Pixel Histos
141 TH2F** hMaxOverlay; //histogrammm for overlay of detected Peaks
142 TH2F** hEdgeOverlay;
143 TProfile** hMaxProfile; //histogrammm for Profile of detected Peaks
144 TProfile** hEdgeProfile; //histogrammm for Profile of detected Peaks
145
146 //Distribution Histos
147 TH1F** hSlopeRisingEdge;
148 TH1I** hRisingEdgeToMax;
149 TH1I** hPosOfMax;
150
151 //Max Overlay Template Histos
152 TH1F** hPixelMax;
153 TH1F** hPixelMedian;
154 TH1F** hPixelMean;
155 //Edge OverlayTemplate Histos
156 TH1F** hPixelEdgeMax;
157 TH1F** hPixelEdgeMedian;
158 TH1F** hPixelEdgeMean;
159
160 TObjArray* hList;
161
162 TFile* mRootFile;
163
164protected:
165 int mConstructorType;
166private:
167};
168
169// INLINE METHODS
170//
171
172// EXTERNAL REFERENCES
173//
174
175#endif // _PIXEL_H_
Note: See TracBrowser for help on using the repository browser.