added low and high flux parameter options
[u/mrichter/AliRoot.git] / EMCAL / beamtest07 / AliEMCALCalibTestBeam.h
CommitLineData
82a2d831 1#ifndef ALIEMCALCALIBTESTBEAM_H
2#define ALIEMCALCALIBTESTBEAM_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/* $Id: AliEMCALCalibTestBeam.h $ */
8
9////////////////////////////////////////////////
10// class for EMCAL testbeam calibration //
11////////////////////////////////////////////////
12
13#include "TGraph.h"
14#include "TSpline.h"
15
16class AliEMCALCalibTestBeam {
17
18 public:
19 AliEMCALCalibTestBeam(const int runNumber=186);
20 AliEMCALCalibTestBeam(const AliEMCALCalibTestBeam &calibtb);
21 AliEMCALCalibTestBeam& operator= (const AliEMCALCalibTestBeam &calibtb);
22 virtual ~AliEMCALCalibTestBeam();
23 virtual void Print() const;
24
25 // simple getters
26 TGraph * GetTemperatureGraph() const { return fTempGraph; } //
27 TSpline3 * GetTemperatureSpline() const { return fTempSpline; } //
28 int GetTimeStart() const { return fTimeStart; } //
29 int GetTimeStop() const { return fTimeStop; } //
30 double GetLengthOfRunInHours() const; //
31 int GetNEvents() const { return fNEvents; } //
32
33 int GetNTempVal() const { return fTempGraph->GetN(); } //
34 double GetMinTemp() const { return fMinTemp; } //
35 double GetMaxTemp() const { return fMaxTemp; } //
36 int GetMinTime() const { return fMinTime; } //
37 int GetMaxTime() const { return fMaxTime; } //
38 double GetRangeOfTempMeasureInHours() const; //
39 double GetRangeOfTempMeasureInDegrees() const; //
40
41 // basic calibration info
42 double GetCorrection(int secSinceRunStart) const; //
43 double GetTemperature(int secSinceStart) const; //
44 double GetCorrection(double temperature) const; // overloaded; maybe a bit dangerous - be careful with the type of arguments you supply..
45
46 private:
47
48 void Reset();
49 void ResetRunInfo();
50 void ResetTempInfo();
51 void Init(const int runno);
52 void GetRunTime(const int runno,
53 const char *filename="/afs/cern.ch/user/d/dsilverm/www/testbeam07/calib/daqLogbook.root");
54 void GetTemperatureInfo(const char* filename="/afs/cern.ch/user/d/dsilverm/www/testbeam07/calib/temperature-merged-alldays.root");
55 void GetEMCALLogbookInfo(const int runno,
56 const char *filename="/afs/cern.ch/user/d/dsilverm/www/testbeam07/calib/EMCAL_Logbook_SPS_and_PS.csv");
57 //
58 TGraph *fTempGraph; //
59 TSpline3 *fTempSpline; //
60 //
61 int fTimeStart;
62 int fTimeStop;
63 int fNEvents;
64 double fMinTemp;
65 double fMaxTemp;
66 int fMinTime;
67 int fMaxTime;
68 //
69 ClassDef(AliEMCALCalibTestBeam,1) // EMCAL Calibration data
70};
71
72#endif