]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONPainterDataSourceFrame.h
Bug fix for loading the LUT for chambers 1 to 6. (Indra)
[u/mrichter/AliRoot.git] / MUON / AliMUONPainterDataSourceFrame.h
CommitLineData
0145e89a 1#ifndef ALIMUONPAINTERDATASOURCEFRAME_H
2#define ALIMUONPAINTERDATASOURCEFRAME_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$
8
9/// \ingroup graphics
10/// \class AliMUONPainterDataSourceFrame
11/// \brief Frame to select input data source(s) to be displayed
12///
13// Author Laurent Aphecetche, Subatech
14
15#ifndef ROOT_TGFrame
16# include <TGFrame.h>
17#endif
18
fcabdc0c 19class AliMUONAttPainter;
10eb3d17 20class AliMUONPainterDataSourceItem;
fcabdc0c 21class AliMUONPainterMatrix;
0145e89a 22class AliMUONVTrackerDataMaker;
fcabdc0c 23class AliMUONVTrackerData;
8741815f 24class TGCheckButton;
0145e89a 25class TGComboBox;
8741815f 26class TGGroupFrame;
27class TGNumberEntry;
28class TGTextEntry;
29class TObjArray;
0145e89a 30
31class AliMUONPainterDataSourceFrame : public TGCompositeFrame
32{
33public:
34 AliMUONPainterDataSourceFrame(const TGWindow* p, UInt_t w, UInt_t h);
35 virtual ~AliMUONPainterDataSourceFrame();
36
8741815f 37 void CalibrateButtonClicked();
38
0145e89a 39 void CreateOCDBDataSource();
40
1286237e 41 void CreateACFDataSource();
42
0145e89a 43 void CreateRawDataSource();
44
49419555 45 void DataMakerWasRegistered(AliMUONVTrackerDataMaker* reader);
0145e89a 46
49419555 47 void DataMakerWasUnregistered(AliMUONVTrackerDataMaker* reader);
0145e89a 48
10eb3d17 49 void HistogramButtonClicked();
50
0145e89a 51 void OpenFileDialog();
52
1286237e 53 void OpenFileDialogACF();
54
0145e89a 55 void OpenRecentSource();
10eb3d17 56
b0cbe180 57 void StartRunning();
10eb3d17 58
b0cbe180 59 void StopRunning();
10eb3d17 60
fcabdc0c 61 static void CreatePedestalCanvases(AliMUONVTrackerData* data,
62 Double_t pedMin=0, Double_t pedMax=500,
63 Double_t sigmaMin=0, Double_t sigmaMax=5);
64
65 static AliMUONPainterMatrix* CreateFullTracker(AliMUONVTrackerData* data,
66 Int_t dim,
67 Double_t xmin, Double_t xmax,
68 const AliMUONAttPainter& att);
69
0145e89a 70private:
71 /// Not implemented
72 AliMUONPainterDataSourceFrame(const AliMUONPainterDataSourceFrame& rhs);
73 /// Not implemented
74 AliMUONPainterDataSourceFrame& operator=(const AliMUONPainterDataSourceFrame& rhs);
75
76 void AddRecentSource(const char* name);
77
78 Bool_t CreateRawDataSource(const TString& uri);
79
80 void CreateOCDBDataSource(const TString& uri);
81
82 void CreateOCDBDataSource(const TString& cdbPath, Int_t runNumber, const TString& type);
83
1286237e 84 void CreateACFDataSource(const TString& uri);
85
86 void CreateACFDataSource(const TString& acfPath, const TString& type);
87
fcabdc0c 88 void RegisterDataSource(AliMUONVTrackerDataMaker* reader, const char* dsName);
89
0145e89a 90private:
91
92 TGGroupFrame* fRecentSourceSelector; ///< to select recently used sources
8741815f 93
0145e89a 94 TGGroupFrame* fRawSelector; ///< to select a new raw data source
8741815f 95 TGCompositeFrame* fRawSelector2; ///< idem
96 TGCompositeFrame* fRawSelector21; ///< idem
97 TGCompositeFrame* fRawSelector22; ///< idem
98 TGCompositeFrame* fRawSelector23; ///< idem
10eb3d17 99 TGCheckButton* fCalibrateNoGain; ///< to trig calibration of raw data (only 0 suppression)
100 TGCheckButton* fCalibrateGainConstantCapa; ///< to trig calibration of raw data (0-supp and gain w/ constant capacitance)
101 TGCheckButton* fCalibrateGain; ///< to trig calibration of raw data (full blown calibration)
66cdf5b3 102 TGCheckButton* fCalibrateEmelecGain; ///< to trig calibration of raw data (full blown calibration but with factory gains)
8741815f 103 TGCheckButton* fHistogramButton; ///< to trig histogramming of raw data
10eb3d17 104 TGNumberEntry* fHistoMin; ///< xmin of histo to make
105 TGNumberEntry* fHistoMax; ///< xmax of histo to make
8741815f 106 TGTextEntry* fRawOCDBPath; ///< OCDB path for raw data calibration
107
0145e89a 108 TGGroupFrame* fOCDBSelector; ///< to select a new OCDB data source
109 TGGroupFrame* fDataReaders; ///< to display currently active data sources
110 TGTextEntry* fFilePath; ///< raw data file path text entry widget
0145e89a 111 TGTextEntry* fOCDBPath; ///< OCDB path text entry widget
112 TGNumberEntry* fRunSelector; ///< OCDB run number entry widget
113 TGComboBox* fOCDBTypes; ///< OCDB type combo box entry widget
114 TGComboBox* fRecentSources; ///< recent sources combo box
115 TObjArray* fItems; ///< list of data readers we handle
116
1286237e 117 TGGroupFrame* fACFSelector; ///< to select ACF (ASCII calibration files)
118 TGTextEntry* fACFPath; ///< path to ASCII calibration file
119 TGComboBox* fACFTypes; ///< types of ASCII calibration files
120
0145e89a 121 static const char* fgkNumberOfDataSourcesKey; ///< key used to store the # of data sources in the resource file
122 static const char* fgkDataSourceURIKey; ///< key usde to store the data source URIs in the resource file
123
66cdf5b3 124 ClassDef(AliMUONPainterDataSourceFrame,4) // Data source selection frame
0145e89a 125};
126
127#endif