]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSRawAnalyzerLMS.cxx
First working implementation of the online cell energy/time evaluation. The
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSRawAnalyzerLMS.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
17 #include "AliHLTPHOSRawAnalyzerLMS.h"
18 #include <iostream>
19
20 using std::cout;
21 using std::endl;
22
23 ClassImp(AliHLTPHOSRawAnalyzerLMS) 
24
25
26 AliHLTPHOSRawAnalyzerLMS::AliHLTPHOSRawAnalyzerLMS(const AliHLTPHOSRawAnalyzerLMS&):AliHLTPHOSRawAnalyzer(), kfMCovarPtrPtr(0), fPCovarPtrPtr(0)
27 {
28
29 }
30
31
32 /**
33  * The AliHLTPHOSPeakfinder class is the class for extracting the basic signal parameters
34  * "timing" and "energy" from the PHOS raw data. Physical data will for a given readout channel be
35  * a sequense of ADC digitized 10 bit integer values, however for performance reasons all values used in
36  * calculation is of type double.
37  **/
38 AliHLTPHOSRawAnalyzerLMS::AliHLTPHOSRawAnalyzerLMS():AliHLTPHOSRawAnalyzer(), kfMCovarPtrPtr(0), fPCovarPtrPtr(0) 
39 {
40   cout <<"You cannot invoke the Fitter without arguments"<<endl;;
41 }
42
43
44 /**
45 * Main constructor
46 * @param dataPtr Data array for wich a subarray will be taken to perform the fit
47 * @param fs the sampling frequency in entities of MHz. Needed in order to calculate physical time
48 **/
49 AliHLTPHOSRawAnalyzerLMS::AliHLTPHOSRawAnalyzerLMS(double *dtaPtr, double fs):AliHLTPHOSRawAnalyzer(),kfMCovarPtrPtr(0), fPCovarPtrPtr(0) 
50 {
51   fFloatDataPtr = dtaPtr;  
52   fSampleFrequency = fs;
53 } //end   AliHLTPHOSRawAnalyzerLMS 
54
55
56 AliHLTPHOSRawAnalyzerLMS::~AliHLTPHOSRawAnalyzerLMS()
57 {
58
59 } //end AliHLTPHOSRawAnalyzerLMS
60
61
62 /**
63 * Extraction of timing and energy using the Peakfinde Algorithm.
64 * The. The parameters "start" and "length" defines a sub array  of the data array
65 * that will be used for the the fit. If start+length must not exeed the total length
66 * of the Data array. "start" must be chosen as close as possible to t0.
67 * The baseline must also be subtracted.
68 * The length of "tVector" and "aVector" mus be equal to length.
69 * "index + length" must not exeed the length of the data array set in the constructor.
70 * @param start the start index of the subarray of the data array. 
71 * @param length the number of samples to use starting from index 
72 **/
73 void 
74 AliHLTPHOSRawAnalyzerLMS::Evaluate(int start, int length)
75 {
76   /*
77
78   */
79
80   //thats all 
81 } //end FitLMS
82
83
84
85
86