#include "AliCaloRawAnalyzerCrude.h"
#include "AliCaloFitResults.h"
#include "AliCaloBunchInfo.h"
#include "TMath.h"
using namespace std;
ClassImp(AliCaloRawAnalyzerCrude)
AliCaloRawAnalyzerCrude::AliCaloRawAnalyzerCrude() : AliCaloRawAnalyzer("Crude", "Crude")
{
fAlgo=Algo::kCrude;
}
AliCaloFitResults
AliCaloRawAnalyzerCrude::Evaluate(const vector<AliCaloBunchInfo> &bunchvector, const UInt_t altrocfg1, const UInt_t altrocfg2)
{
short maxampindex;
short maxamp;
int index = SelectBunch( bunchvector, &maxampindex, &maxamp );
if( index >= 0)
{
Float_t ped = ReverseAndSubtractPed( &(bunchvector.at(index)) , altrocfg1, altrocfg2, fReversed );
Float_t maxf = TMath::MaxElement( bunchvector.at(index).GetLength(), fReversed );
short timebinOffset = maxampindex - (bunchvector.at(index).GetLength()-1);
if( maxf < fAmpCut || ( maxamp - ped) > fOverflowCut )
{
return AliCaloFitResults( maxamp, ped, Ret::kCrude, maxf, timebinOffset);
}
else if ( maxf >= fAmpCut )
{
int first = 0;
int last = 0;
int maxrev = maxampindex - bunchvector.at(index).GetStartBin();
SelectSubarray( fReversed, bunchvector.at(index).GetLength(), maxrev , &first, &last, fFitArrayCut );
Float_t chi2 = CalculateChi2(maxf, maxrev, first, last);
Int_t ndf = last - first - 1;
return AliCaloFitResults( maxamp, ped, Ret::kCrude, maxf, timebinOffset,
timebinOffset, chi2, ndf, Ret::kDummy, AliCaloFitSubarray(index, maxrev, first, last) );
}
}
return AliCaloFitResults( Ret::kInvalid , Ret::kInvalid);
}
AliCaloRawAnalyzerCrude.cxx:1 AliCaloRawAnalyzerCrude.cxx:2 AliCaloRawAnalyzerCrude.cxx:3 AliCaloRawAnalyzerCrude.cxx:4 AliCaloRawAnalyzerCrude.cxx:5 AliCaloRawAnalyzerCrude.cxx:6 AliCaloRawAnalyzerCrude.cxx:7 AliCaloRawAnalyzerCrude.cxx:8 AliCaloRawAnalyzerCrude.cxx:9 AliCaloRawAnalyzerCrude.cxx:10 AliCaloRawAnalyzerCrude.cxx:11 AliCaloRawAnalyzerCrude.cxx:12 AliCaloRawAnalyzerCrude.cxx:13 AliCaloRawAnalyzerCrude.cxx:14 AliCaloRawAnalyzerCrude.cxx:15 AliCaloRawAnalyzerCrude.cxx:16 AliCaloRawAnalyzerCrude.cxx:17 AliCaloRawAnalyzerCrude.cxx:18 AliCaloRawAnalyzerCrude.cxx:19 AliCaloRawAnalyzerCrude.cxx:20 AliCaloRawAnalyzerCrude.cxx:21 AliCaloRawAnalyzerCrude.cxx:22 AliCaloRawAnalyzerCrude.cxx:23 AliCaloRawAnalyzerCrude.cxx:24 AliCaloRawAnalyzerCrude.cxx:25 AliCaloRawAnalyzerCrude.cxx:26 AliCaloRawAnalyzerCrude.cxx:27 AliCaloRawAnalyzerCrude.cxx:28 AliCaloRawAnalyzerCrude.cxx:29 AliCaloRawAnalyzerCrude.cxx:30 AliCaloRawAnalyzerCrude.cxx:31 AliCaloRawAnalyzerCrude.cxx:32 AliCaloRawAnalyzerCrude.cxx:33 AliCaloRawAnalyzerCrude.cxx:34 AliCaloRawAnalyzerCrude.cxx:35 AliCaloRawAnalyzerCrude.cxx:36 AliCaloRawAnalyzerCrude.cxx:37 AliCaloRawAnalyzerCrude.cxx:38 AliCaloRawAnalyzerCrude.cxx:39 AliCaloRawAnalyzerCrude.cxx:40 AliCaloRawAnalyzerCrude.cxx:41 AliCaloRawAnalyzerCrude.cxx:42 AliCaloRawAnalyzerCrude.cxx:43 AliCaloRawAnalyzerCrude.cxx:44 AliCaloRawAnalyzerCrude.cxx:45 AliCaloRawAnalyzerCrude.cxx:46 AliCaloRawAnalyzerCrude.cxx:47 AliCaloRawAnalyzerCrude.cxx:48 AliCaloRawAnalyzerCrude.cxx:49 AliCaloRawAnalyzerCrude.cxx:50 AliCaloRawAnalyzerCrude.cxx:51 AliCaloRawAnalyzerCrude.cxx:52 AliCaloRawAnalyzerCrude.cxx:53 AliCaloRawAnalyzerCrude.cxx:54 AliCaloRawAnalyzerCrude.cxx:55 AliCaloRawAnalyzerCrude.cxx:56 AliCaloRawAnalyzerCrude.cxx:57 AliCaloRawAnalyzerCrude.cxx:58 AliCaloRawAnalyzerCrude.cxx:59 AliCaloRawAnalyzerCrude.cxx:60 AliCaloRawAnalyzerCrude.cxx:61 AliCaloRawAnalyzerCrude.cxx:62 AliCaloRawAnalyzerCrude.cxx:63 AliCaloRawAnalyzerCrude.cxx:64 AliCaloRawAnalyzerCrude.cxx:65 AliCaloRawAnalyzerCrude.cxx:66 AliCaloRawAnalyzerCrude.cxx:67 AliCaloRawAnalyzerCrude.cxx:68 AliCaloRawAnalyzerCrude.cxx:69 AliCaloRawAnalyzerCrude.cxx:70 AliCaloRawAnalyzerCrude.cxx:71 AliCaloRawAnalyzerCrude.cxx:72 AliCaloRawAnalyzerCrude.cxx:73 AliCaloRawAnalyzerCrude.cxx:74 AliCaloRawAnalyzerCrude.cxx:75 AliCaloRawAnalyzerCrude.cxx:76 AliCaloRawAnalyzerCrude.cxx:77