Adding include path to allow compilation of CleanGeom task
[u/mrichter/AliRoot.git] / EMCAL / AliCaloRawAnalyzerComparison.h
CommitLineData
48a2e3eb 1#ifndef ALICALORAWANALYZERCOMPARISON_H
2#define ALICALORAWANALYZERCOMPARISON_H
3
4/**************************************************************************
5 * This file is property of and copyright by the Experimental Nuclear *
6 * Physics Group, Dep. of Physics *
7 * University of Oslo, Norway, 2007 *
8 * *
9 * Author: Per Thomas Hille <perthi@fys.uio.no> for the ALICE HLT Project.*
10 * Contributors are mentioned in the code where appropriate. *
11 * Please report bugs to perthi@fys.uio.no *
12 * *
13 * Permission to use, copy, modify and distribute this software and its *
14 * documentation strictly for non-commercial purposes is hereby granted *
15 * without fee, provided that the above copyright notice appears in all *
16 * copies and that both the copyright notice and this permission notice *
17 * appear in the supporting documentation. The authors make no claims *
18 * about the suitability of this software for any purpose. It is *
19 * provided "as is" without express or implied warranty. *
20 **************************************************************************/
21
22#define NANALYZERS 5
23
24#include <vector>
25#include "AliCaloBunchInfo.h"
26#include "AliCaloFitResults.h"
27
28#define NZCOLSSMOD 48
29#define NXROWSSMOD 24
30
48a2e3eb 31class AliCaloRawAnalyzer;
32class TH2D;
33class TH1D;
34
35
36class AliCaloRawAnalyzerComparison
37{
38 public:
39 AliCaloRawAnalyzerComparison();
40 virtual ~AliCaloRawAnalyzerComparison();
ce95bae9 41 void Evaluate( const std::vector<AliCaloBunchInfo> &bunchvector,
48a2e3eb 42 const UInt_t altrocfg1, const UInt_t altrocfg2, const int event, const int col, const int row );
43
44 void EventChanged();
45
46 void WriteHistograms();
47
48 private:
fc7cd737 49 AliCaloRawAnalyzerComparison( const AliCaloRawAnalyzerComparison & );
50 AliCaloRawAnalyzerComparison & operator = ( const AliCaloRawAnalyzerComparison & );
51
ce95bae9 52 void IntiHistograms( std::vector <AliCaloRawAnalyzer*> analyzers, AliCaloRawAnalyzer* ref );
48a2e3eb 53
afae9650 54 TH1D *fAmpHistograms[NANALYZERS][NZCOLSSMOD][NXROWSSMOD]; // amplitude histos
48a2e3eb 55
56 TH2D *fAmplitudeVsEvent[NANALYZERS]; // Amplitude vs envent number
57 TH2D *fTofVsEvent[NANALYZERS]; // Tof vs event number
58 TH2D *fRefAmpVsAnalyzers[NANALYZERS]; // Amplidue from give analyzer vs reference
59 TH2D *fRefTofVsAnalyzers[NANALYZERS]; // Amplidue from give analyzer vs reference
60 TH1D *fAmpDiff[NANALYZERS]; // Difference in amplitude between reference
61 TH1D *fTofDiff[NANALYZERS]; // Difference in tof between reference
62 TH1D *fTofResDifferential[NANALYZERS]; //differntial tof resolution
63 TH1D *fTofResAbsolute[NANALYZERS]; //differntial tof resolution
64
65
ce95bae9 66 std::vector <AliCaloRawAnalyzer*> fRawAnalyzers; // raw analyzers
85a699d8 67 AliCaloRawAnalyzer *fReferenceAnalyzer; // reference analyzer
48a2e3eb 68
85a699d8 69 int fMod; // SuperModule index
70 int fMonCol1; // column index, for tower 1
71 int fMonRow1; // row index, for tower 1
72 int fMonCol2; // column index, for tower 2
73 int fMonRow2; // row index, for tower 1
74
75 AliCaloFitResults fMon1[NANALYZERS]; // results for tower 1
76 AliCaloFitResults fMon2[NANALYZERS]; // results for tower 2
48a2e3eb 77
78};
79
80#endif