fix for bug #66858] (PWG1 train problem for LHC10c data)
[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:
ce95bae9 49 void IntiHistograms( std::vector <AliCaloRawAnalyzer*> analyzers, AliCaloRawAnalyzer* ref );
48a2e3eb 50
51 TH1D *fAmpHistograms[NANALYZERS][NZCOLSSMOD][NXROWSSMOD];
52
53 TH2D *fAmplitudeVsEvent[NANALYZERS]; // Amplitude vs envent number
54 TH2D *fTofVsEvent[NANALYZERS]; // Tof vs event number
55 TH2D *fRefAmpVsAnalyzers[NANALYZERS]; // Amplidue from give analyzer vs reference
56 TH2D *fRefTofVsAnalyzers[NANALYZERS]; // Amplidue from give analyzer vs reference
57 TH1D *fAmpDiff[NANALYZERS]; // Difference in amplitude between reference
58 TH1D *fTofDiff[NANALYZERS]; // Difference in tof between reference
59 TH1D *fTofResDifferential[NANALYZERS]; //differntial tof resolution
60 TH1D *fTofResAbsolute[NANALYZERS]; //differntial tof resolution
61
62
ce95bae9 63 std::vector <AliCaloRawAnalyzer*> fRawAnalyzers; // raw analyzers
85a699d8 64 AliCaloRawAnalyzer *fReferenceAnalyzer; // reference analyzer
48a2e3eb 65
85a699d8 66 int fMod; // SuperModule index
67 int fMonCol1; // column index, for tower 1
68 int fMonRow1; // row index, for tower 1
69 int fMonCol2; // column index, for tower 2
70 int fMonRow2; // row index, for tower 1
71
72 AliCaloFitResults fMon1[NANALYZERS]; // results for tower 1
73 AliCaloFitResults fMon2[NANALYZERS]; // results for tower 2
48a2e3eb 74
75};
76
77#endif