changes from Misha
[u/mrichter/AliRoot.git] / TRD / AliTRDCalibViewer.h
CommitLineData
9bf458e3 1#ifndef ALITRDCALIBVIEWER_H
2#define ALITRDCALIBVIEWER_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id: AliTRDCalibViewer.h 34418 2009-08-26 15:47:50Z cblume $ */
7
8///////////////////////////////////////////////////////////////////////////////
9// //
10// Class which implements AliBaseCalibViewer for the TRD //
11// used for the calibration monitor //
12// //
13///////////////////////////////////////////////////////////////////////////////
14
15#include <TObject.h>
16#include <TTree.h>
17#include <TFile.h>
18#include "TFriendElement.h"
19#include "TVectorD.h"
20#include "AliBaseCalibViewer.h"
21class AliTRDCalDet;
22class AliTRDCalPad;
23
24
25class AliTRDCalibViewer : public AliBaseCalibViewer {
26 public:
27 AliTRDCalibViewer();
28 AliTRDCalibViewer(const AliTRDCalibViewer &c);
29 AliTRDCalibViewer(TTree* tree);
30 AliTRDCalibViewer(const char* fileName, const char* treeName = "TRDcalibDetails");
31 AliTRDCalibViewer &operator= (const AliTRDCalibViewer& param);
32 virtual ~AliTRDCalibViewer();
33
34 virtual TObjArray* GetListOfVariables(Bool_t printList = kFALSE);
35 virtual TObjArray* GetListOfNormalizationVariables(Bool_t printList = kFALSE) const;
36
37 //virtual void GetTimeInfoOCDB(const Char_t* runList, const Char_t* outFile,
38 //Int_t firstRun, Int_t lastRun, UInt_t infoFlags,
39 //const Char_t* ocdbStorage);
40 // extract pad level OCDB information for a run list and dump it into a tree
41 Bool_t DumpOCDBtoTreeDetails(const Char_t* runListFilename, const Char_t* outFilename,
42 Int_t firstRun, Int_t lastRun, const Char_t* storage,
43 Int_t version = -1, Int_t subVersion = -1,
44 Bool_t getCalibs = kTRUE, Bool_t getDCS = kTRUE, Bool_t getAlign = kTRUE);
45 // read AliTRDCalPad objects from a root file and dump a root tree
46 void DumpCalibToTree(const Char_t* inFilename, const Char_t* outFilename);
47 // extract averages from calibration objects
48 void ProcessTRDCalibArray(AliTRDCalDet* chamberCalib, AliTRDCalPad *padCalib,
49 TString parName,
50 Double_t &runValue, Double_t &runRMS,
51 TVectorD &chamberValues, TVectorD &chamberValuesRMS,
52 TVectorD &superModuleValues, TVectorD &superModuleValuesRMS);
53 // extract averages from calibration objects
54 void ProcessTRDCalibArray(AliTRDCalPad *padCalib,
55 TVectorD &superModuleValues, TVectorD &superModuleValuesRMS);
56
57 virtual const char* AddAbbreviations(char* c, Bool_t printDrawCommand = kFALSE);
58 void GetLayerSectorStack(TString trdString, Int_t& layerNo, Int_t& sectorNo, Int_t& stackNo) const;
59 // easy drawing of data, use '~' for abbreviation of '.fElements'
60 virtual Int_t EasyDraw(const char* drawCommand, const char* sector, const char* cuts = 0,
61 const char* drawOptions = 0, Bool_t writeDrawCommand = kFALSE) const;
62 // easy drawing of data, use '~' for abbreviation of '.fElements'
63 virtual Int_t EasyDraw(const char* drawCommand, Int_t sector, const char* cuts = 0,
64 const char* drawOptions = 0, Bool_t writeDrawCommand = kFALSE) const;
65 // easy drawing of data, use '~' for abbreviation of '.fElements'
66 virtual Int_t EasyDraw1D(const char* drawCommand, const char* sector, const char* cuts = 0,
67 const char* drawOptions = 0, Bool_t writeDrawCommand = kFALSE) const;
68 // easy drawing of data, use '~' for abbreviation of '.fElements'
69 virtual Int_t EasyDraw1D(const char* drawCommand, Int_t sector, const char* cuts = 0,
70 const char* drawOptions = 0, Bool_t writeDrawCommand = kFALSE) const;
71
72 ClassDef(AliTRDCalibViewer,1) // TRD calibration viewer class
73};
74
75#endif