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

Last change on this file since 13604 was 13604, checked in by Jens Buss, 13 years ago
histograms for template computation from edge overlay
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 int bSLMean,
61 int 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(const char *loc_fname, bool);
121 void LoadPulseHistos( );
122
123 //File Handling Service Functions
124 TString HistoTitle(TString, int );
125 TString HistoName(TString, int);
126
127// ACCESS
128// INQUIRY
129 int mChid;
130 bool mStats;
131 int mMaxPulseOrder;
132 int mVerbosityLevel;
133 int mPixelOverlayXaxisLeft;
134 int mPixelOverlayXaxisRight;
135 int mBSLMean;
136 int mGainMean;
137 TString mOptions;
138
139 //Pixel Histos
140 TH2F** hMaxOverlay; //histogrammm for overlay of detected Peaks
141 TH2F** hEdgeOverlay;
142 TProfile** hMaxProfile; //histogrammm for Profile of detected Peaks
143 TProfile** hEdgeProfile; //histogrammm for Profile of detected Peaks
144
145 //Distribution Histos
146 TH1F** hSlopeRisingEdge;
147 TH1I** hRisingEdgeToMax;
148 TH1I** hPosOfMax;
149
150 //Max Overlay Template Histos
151 TH1F** hPixelMax;
152 TH1F** hPixelMedian;
153 TH1F** hPixelMean;
154 //Edge OverlayTemplate Histos
155 TH1F** hPixelEdgeMax;
156 TH1F** hPixelEdgeMedian;
157 TH1F** hPixelEdgeMean;
158
159 TObjArray* hList;
160
161 TFile* mRootFile;
162
163protected:
164 int mConstructorType;
165private:
166};
167
168// INLINE METHODS
169//
170
171// EXTERNAL REFERENCES
172//
173
174#endif // _PIXEL_H_
Note: See TracBrowser for help on using the repository browser.