Fix (Francesco)
[u/mrichter/AliRoot.git] / TPC / AliTPCMonitorConfig.h
CommitLineData
48265b32 1#ifndef ALITPCMONITORCONFIG_H
2#define ALITPCMONITORCONFIG_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/* $Id$ */
8
fb3305d1 9//////////////////////////////////////////////////////////////////////////
10////
11//// AliTPCMonitorConfig class
12////
13//// Configuration handler class for AliTPCMonitor.
14//// The class reads and stores basic configurations
15//// for the AliTPCMonitor class. The values can be changed
16//// online or written to the configuration file AliTPCMonitorConfig.txt
17////
18//// Author: Stefan Kniege, IKF, Frankfurt
19////
20////
48265b32 21/////////////////////////////////////////////////////////////////////////
22
ca7b8371 23#include "TNamed.h"
48265b32 24
25class AliTPCMonitorConfig: public TNamed
26{
27 public :
28
ca7b8371 29 AliTPCMonitorConfig(const Char_t* name,const Char_t* title);
30 AliTPCMonitorConfig(const AliTPCMonitorConfig &config);
31 AliTPCMonitorConfig& operator= (const AliTPCMonitorConfig& config);
48265b32 32 virtual ~AliTPCMonitorConfig();
33
ca7b8371 34 Float_t GetButtonXSize() const { return fButtonXSize;}
35 Float_t GetButtonYSize() const { return fButtonYSize;}
36 Float_t GetButtonXFirst1() const { return fButtonFirstX1;}
37 Float_t GetButtonXFirst2() const { return fButtonFirstX2;}
38 Float_t GetButtonYFirst() const { return fButtonFirstY;}
39 Int_t GetMainXSize() const { return fMainXSize;}
40 Int_t GetMainYSize() const { return fMainYSize;}
41 Int_t GetBorderXSize() const { return fBorderXSize;}
42 Int_t GetBorderYSize() const { return fBorderYSize;}
43 Int_t GetCanvasXOffset() const { return fCanvasXOffset;}
44 Int_t GetCanvasXSize() const { return fCanvasXSize;}
45 Int_t GetCanvasYSize() const { return fCanvasYSize;}
46 Int_t GetCanvasXSpace() const { return fCanvasXSpace;}
47 Int_t GetCanvasYSpace() const { return fCanvasYSpace;}
48
49 Float_t* GetComponentSelection() const { return fComponents;}
50
51 Int_t GetEventProcessed() const { return fEventProcessed ;}
48265b32 52
53
ca7b8371 54 Int_t GetFormat() const { return fFormat ;}
55 Char_t* GetFile() const { return fFileCurrent;}
48265b32 56
ca7b8371 57 Int_t GetFitPulse() const { return fFitPulse ;}
48265b32 58 Char_t* GetLastProcFile();
ca7b8371 59 Int_t GetMaxHwAddr() const { return fMaxHwAddr ; }
48265b32 60
ca7b8371 61 Int_t GetLastSector() const { return fSectorLast;}
62 Int_t GetLastSectorDisplayed() const { return fSectorLastDisplayed;}
48265b32 63
ca7b8371 64 Int_t GetNextEventID() const { return fEventNextID ;}
65 Int_t GetNumOfChannels() const { return fNumOfChannels ; }
48265b32 66
ca7b8371 67 Int_t GetPedestals() const { return fPedestals ; }
68 Int_t GetProcNextEvent() const { return fEventNext;}
48265b32 69
ca7b8371 70 Int_t GetProcOneSector() const { return fProcOneSector;}
48265b32 71
ca7b8371 72 Int_t GetRangeBaseMin() const { return fRangeBaseMin;}
73 Int_t GetRangeBaseMax() const { return fRangeBaseMax;}
48265b32 74
ca7b8371 75 Int_t GetRangeMaxAdcMin() const { return fRangeMaxAdcMin;}
76 Int_t GetRangeMaxAdcMax() const { return fRangeMaxAdcMax;}
48265b32 77
ca7b8371 78 Int_t GetRangeSumMin() const { return fRangeSumMin;}
79 Int_t GetRangeSumMax() const { return fRangeSumMax;}
48265b32 80
81
ca7b8371 82 Int_t GetSectorFilled(Int_t sector,Int_t side)const { return fSectorArr[sector+side*18] ;}
83 Int_t GetSectorFilled(Int_t sector) const { return fSectorArr[sector] ;}
48265b32 84
ca7b8371 85 Int_t GetSamplingFrequency() const { return fSamplingFreq;}
48265b32 86
ca7b8371 87 Int_t GetTimeBins() const { return fTimeBins ; }
48265b32 88
ca7b8371 89 Int_t GetWrite10Bit() const { return fWrite10Bit ;}
48265b32 90
91
92
93 void SetBaseConfig(float* ConfArr);
94
95 void SetLastProcFile(Char_t* val);
96
97 void SetEventProcessed(Int_t val) { fEventProcessed=val;}
98
99 void SetFitPulse( Int_t val) { fFitPulse =val;}
100
101 void SetNumOfChannels(Int_t val) { fNumOfChannels = val ; }
102
103 void SetPedestals(Int_t val) { fPedestals = val ; }
104
105 void SetTimeBins(Int_t val) { fTimeBins = val ; }
106
107 void SetFile(Char_t* val) { sprintf(fFileCurrent,val);}
108
109 void SetLastSector(Int_t val) { fSectorLast = val;}
110
111 void SetLastSectorDisplayed(Int_t val) { fSectorLastDisplayed = val;}
112
113 void SetNextEventID(Int_t val ) { fEventNextID = val;}
114
115 void SetProcNextEvent(Int_t val) { fEventNext = val ;}
116
117 void SetProcOneSector(Int_t val) { fProcOneSector = val ;}
118
119 void SetRangeMax( Int_t min, Int_t max) { fRangeMaxAdcMin=min, fRangeMaxAdcMax=max;}
120 void SetRangeBase(Int_t min, Int_t max) { fRangeBaseMin =min, fRangeBaseMax =max;}
121 void SetRangeSum( Int_t min, Int_t max) { fRangeSumMin =min, fRangeSumMax =max;}
122
123 void SetSectorFilled(Int_t sector,Int_t side){ fSectorArr[sector+side*18] =1;}
124 void SetSectorFilled(Int_t sector) { fSectorArr[sector] =1;}
125
126 void SetComponentSelection(float* val) { for(Int_t i=0;i<10;i++) fComponents[i] = val[i];}
127
128 void SetFormat(Int_t val) { fFormat = val;}
129
130 void SetWrite10Bit(Int_t val) { fWrite10Bit =val;}
131 void SetMainSize(Int_t mainx, Int_t mainy,
132 Int_t borderx ,Int_t bordery );
133
134 void PrintConfig();
135
136 void ReadConfig(Char_t* nameconf);
137 void ResetSectorArray() { for(Int_t i=0;i<36; i++) fSectorArr[i]=0;}
138
ca7b8371 139 private:
140
141 // Data Format 0: DATA 1: ROOT
142 Int_t fFormat; // Format of the processed file/stream
143
144 Int_t fSector; // Currently processed sector
145 Int_t fSectorLast; // Previously processed sector
146 Int_t fSectorLastDisplayed; // Last displayed sector
147 Int_t* fSectorArr; // Array of processed sectors
148
149 // Current and Last Files and Dirs
150 Char_t* fFileLast; // Name of last processed file/stream
151 Int_t fFileLastSet ; // Flag showing if last file name was set
152
153 Char_t* fFileCurrent; // Current file/stream name
154
155 Int_t fEventNext; // Process next event -> do not stay in current event
156 Int_t fEventNextID; // Next event ID to be processed (if event id does not exist search for next existing event)
157
158 Int_t fEventProcessed; // Flag to show if event was read in
159
160 // Ranges for determination of ADC max , Baseline and ADC Sum
161 Int_t fRangeMaxAdcMin ; // Min timebin of range to determine max. adc value
162 Int_t fRangeMaxAdcMax ; // Max timebin of range to determine max. adc value
163
164 Int_t fRangeBaseMin ; // Min timebin of range to determine baseline
165 Int_t fRangeBaseMax ; // Max timebin of range to determine basline
166
167 Int_t fRangeSumMin ; // Min timebin of range to determine adc sum
168 Int_t fRangeSumMax ; // Max timebin of range to determine adc sum
169
170 // Canvas Size for Monitor Canvases
171 Int_t fCanvasXSize; // Canvas size in x ( set to fCanvasMainSize )
172 Int_t fCanvasYSize; // Canvas size in y ( set to fCanvasMainSize )
173 Int_t fCanvasXSpace; // Canvas size in x + border size
174 Int_t fCanvasYSpace; // Canvas size in y + border size
175 Int_t fCanvasXOffset; // Canvas x offset (main window)
176 Int_t fCanvasMainSize; // Canvas size in x and y
177
178 // Size of Main frame and Border (depending on Window Manager)
179 Int_t fMainXSize; // Main window size x
180 Int_t fMainYSize; // Main window size y
181
182 Int_t fBorderXSize ; // Canvas border size x
183 Int_t fBorderYSize ; // Canvas border size y
184
185 // Buttonsize;
186 Float_t fButtonXSize ; // Button size x
187 Float_t fButtonYSize ; // Button size y
188 Float_t fButtonFirstX1; // Pos of first button row in x
189 Float_t fButtonFirstX2; // Pos of second button row in x
190 Float_t fButtonFirstY ; // Position of first button in y
191
192 Int_t fWrite10Bit ; // Flag to write 10 bit data words to file
193
194 // Arr to Store Selected components to be displayed
195 Float_t* fComponents; // Array of components to be selected for display
196
197 // Sampling Freq required for FFT
198 Int_t fSamplingFreq; // Sampling frequency for data taking
199
200
201 Int_t fPedestals ; // Version for pedestal calculation
202 Int_t fNumOfChannels ; // Maximum number of channels
203 Int_t fTimeBins ; // Number of timebins to be displayed
204 Int_t fMaxHwAddr ; // Max value of hardware addresses
205
206 Int_t fFitPulse ; // Flag for fitting pulse around max adc
207
208 Int_t fProcOneSector ; // Flag for processing only the specified sector for the next event
209
48265b32 210
211 ClassDef(AliTPCMonitorConfig,1);
212};
213#endif