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