]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSRawAnalyzer.cxx
Fixed the last compilation warnings
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSRawAnalyzer.cxx
1 /**************************************************************************
2  * Copyright(c) 2006, ALICE Experiment at CERN, All rights reserved.      *
3  *                                                                        *
4  * Author: Per Thomas Hille for the ALICE HLT Project.                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 #include "AliHLTPHOSRawAnalyzer.h"
17
18
19 AliHLTPHOSRawAnalyzer:: AliHLTPHOSRawAnalyzer(): AliHLTPHOSBase(), 
20                                                  fFloatDataPtr(0), 
21                                                  fIntDataPtr(0), 
22                                                  fSampleFrequency(10),
23                                                  fDTofGuess(-1),
24                                                  fDAmplGuess(-1),
25                                                  fTau(2), 
26                                                  fDTof(99999), 
27                                                  fDAmpl(99999),
28                                                  fStartIndex(0) 
29 {
30  fIntDataPtr = new UInt_t[1008];
31 }
32
33 AliHLTPHOSRawAnalyzer::~AliHLTPHOSRawAnalyzer()
34 {
35   delete[] fIntDataPtr;
36 }
37
38
39
40 /**
41 * Main constructor
42 * @param dtaPtr Data array for wich a subarray will be taken to perform the fit
43 * @param fs the sampling frequency in entities of MHz. Needed in order to calculate physical time
44 **/
45 AliHLTPHOSRawAnalyzer::AliHLTPHOSRawAnalyzer(double * /*dtaPtr*/, double fs): AliHLTPHOSBase(), 
46                                                                               fFloatDataPtr(0), 
47                                                                               fIntDataPtr(0), 
48                                                                               fSampleFrequency(10),
49                                                                               fDTofGuess(-1),
50                                                                               fDAmplGuess(-1),
51                                                                               fTau(2), 
52                                                                               fDTof(99999), 
53                                                                               fDAmpl(99999),
54                                                                               fStartIndex(0) 
55 {
56   fSampleFrequency = fs;
57 } //end  
58
59
60 /**
61 * Attemps to level the basline to zero.
62 * The baseline will be calculated from the pretrigger samples and subtracted from the 
63 * data array. 
64 * If pretrigger samples are not present then the basline correction will be incorrect. 
65 * @param dataPtr array for wich to correct the basline 
66 * @param N the number of pretrigger samples used to calculate the baseline.
67 **/
68 void 
69 AliHLTPHOSRawAnalyzer::BaselineCorrection(double * /*dataPtr*/, int /*N*/)
70 {
71
72 } //end BaselineCorrection
73
74
75 /**
76 * Shifts the baseline with the amount given by baselineValue
77 * If pretrigger samples are not present then the basline correction will be incorrect. 
78 * @param dataPtr array for wich to correct the basline 
79 * @param baselineValue the basline value to subtract..
80 **/
81 void 
82 AliHLTPHOSRawAnalyzer::BaselineCorrection(double * /*dataPtr*/, double /*baselineValue*/)
83 {
84
85 } //end BaslineCorrection
86
87
88 /**
89  * Gives the timing in entities of sample indexes
90  * Physical time is found by multiplying  with the sampling intervall (Ts).
91  **/
92 float
93 AliHLTPHOSRawAnalyzer::GetTiming() const 
94 {
95   return fDTof;
96 } //end GetTiming
97
98
99 /**
100  * Gives the time in entities of ADC channels (quantization levels).  
101  * Absolute enrgy is found by multiplying with offline calibration constants.
102  **/
103 float
104 AliHLTPHOSRawAnalyzer::GetEnergy() const
105 {
106   return fDAmpl;
107 } //end GetEnergy
108
109
110 /**
111  * Set data array. Overrides data data array set in the constructor.
112  **/
113 void 
114 AliHLTPHOSRawAnalyzer::SetData(const UInt_t *data) 
115 {
116   fIntDataPtr = data;
117 }
118
119 /**
120  * Set data array. Overrides data data array set in the constructor.
121  **/
122 void 
123 AliHLTPHOSRawAnalyzer::SetData(const double *data) 
124 {
125   fFloatDataPtr = data;
126 }
127
128
129
130 void 
131 AliHLTPHOSRawAnalyzer::SetSampleFreq(double freq)
132 {
133   fSampleFrequency = freq;
134 }
135
136 int 
137 AliHLTPHOSRawAnalyzer::FindStartIndex(double /*treshold*/)
138 {
139   // cout << "Find Start index not yet implemented" << endl;
140   return 0;
141 } //end FindStartIndex
142
143
144 /**
145  * This function applies only to the Chi and Least mean square fit. An initial guess is made
146  * based on the average of the first 5 samples and the first value exeeding this value.
147  **/
148 void 
149 AliHLTPHOSRawAnalyzer::MakeInitialGuess()
150 {
151   //  cout << "Make initial guess not yet implemeted" << endl;
152 }
153
154
155 /**
156  * This function applies only to the Chi and Least mean square fit. An initial guess is made
157  * based on the average of the first 5 samples and the first value exeeding threshold + this value.
158  * @param treshold The index of the first value above treshold is ntaken to be the first value.
159  **/
160 void 
161 AliHLTPHOSRawAnalyzer::MakeInitialGuess(int /*treshold*/)
162 {
163   //  cout << "Make initial guess not yet implemeted" << endl;  
164 }
165
166
167 void
168 AliHLTPHOSRawAnalyzer::SetStartIndex(int index)
169 {
170   fStartIndex = index;
171 }
172
173
174
175 void 
176 AliHLTPHOSRawAnalyzer::SetTVector(Double_t * /*tVector*/, Int_t /*size*/)
177 {
178   //  cout <<"ERROR: AliHLTPHOSRawAnalyzer::SetTVector:  You cannot set the peakfindervector here, must be set in derived class peakfinder"<<endl;
179 }
180
181
182
183 void
184 AliHLTPHOSRawAnalyzer::SetAVector(Double_t * /*aVector*/, Int_t /*size*/)
185 {
186   // cout <<"ERROR: AliHLTPHOSRawAnalyzer::SetAVector:  You cannot set the peakfindervector here, must be set in derived class peakfinder"<<endl;
187 }
188
189