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 */
6 /* $Id: AliTRDCalibViewer.h 34418 2009-08-26 15:47:50Z cblume $ */
8 ///////////////////////////////////////////////////////////////////////////////
10 // Class which implements AliBaseCalibViewer for the TRD //
11 // used for the calibration monitor //
13 ///////////////////////////////////////////////////////////////////////////////
18 #include "TFriendElement.h"
20 #include "AliBaseCalibViewer.h"
25 class AliTRDCalibViewer : public AliBaseCalibViewer {
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();
34 virtual TObjArray* GetListOfVariables(Bool_t printList = kFALSE);
35 virtual TObjArray* GetListOfNormalizationVariables(Bool_t printList = kFALSE) const;
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,
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);
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;
72 ClassDef(AliTRDCalibViewer,1) // TRD calibration viewer class