]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ANALYSIS/Aliengui/AliTagAnalysisFrame.h
(hopefully) Last tweaks to have the embedding straight : the charge of sdigits is...
[u/mrichter/AliRoot.git] / ANALYSIS / Aliengui / AliTagAnalysisFrame.h
1 #ifndef ALITAGANALYSISFRAME_H
2 #define ALITAGANALYSISFRAME_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 //-------------------------------------------------------------------------
9 //                          Class AliTagAnalysisFrame
10 //   AliTagAnalysisFrame class that describes the event tag frame of the GUI
11 //
12 //    Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch
13 //-------------------------------------------------------------------------
14
15
16
17 //////////////////////////////////////////////////////////////////////////
18 //                                                                      //
19 //                        AliTagAnalysisFrame                           //
20 //                                                                      //
21 //                      Event tag tab of the GUI.                       //
22 //                                                                      //
23 //////////////////////////////////////////////////////////////////////////
24
25 #include <TGFrame.h>
26
27 class TGListTreeItem;
28 class TGLabel;
29 class TGTextEntry;
30 class TGVerticalFrame;
31 class TGButton;
32 class TGGroupFrame;
33 class TGComboBox;
34 class TGListBox;
35 class TGTransientFrame;
36
37 class TGridResult;
38 class TChain;
39
40 class AliRunTagCuts;
41 class AliLHCTagCuts;
42 class AliDetectorTagCuts;
43 class AliEventTagCuts;
44 class AliTagAnalysis;
45
46 class AliAlienBrowser;
47 class AliTagFrame;
48 class AliAnalysisGUI;
49
50 //___________________________________________________________________________
51 class AliTagAnalysisFrame : public TGMainFrame {
52 public:
53   AliTagAnalysisFrame(const TGWindow *main, UInt_t w, UInt_t h, AliAnalysisGUI* a=0);
54   ~AliTagAnalysisFrame();
55   
56   //___________________________________________________________________________
57   // slots
58   void LocalBrowse();
59   void GridBrowse();
60   void OnDoubleClick(TGListTreeItem* item, Int_t btn);
61   void OnOKButton();
62   void InsertTagCutsRangeLocal();
63   void InsertTagCutsRangeGrid();
64   void RunLocal();
65   void RunGrid();
66   void ProcessSelector(const char* selectorfile);
67
68   //___________________________________________________________________________
69  private:
70   AliTagAnalysisFrame(const AliTagAnalysisFrame&); // cp ctor
71   AliTagAnalysisFrame& operator= (const AliTagAnalysisFrame&); // op=
72    
73   // private methods
74   void BuildLocalGroup (TGCompositeFrame* frame);
75   void BuildGridGroup  (TGCompositeFrame* frame);
76   void InsertTagCutsRange(Int_t id);
77   void AddResult (const char* line);
78
79   const Int_t fkNumberOfTags; //event tags
80
81   TGVerticalFrame     *fVFrame1, *fVFrame2; //vertical frames
82   TGGroupFrame        *fGroup1, *fGroup2, *fGroup3; //group of frames
83    
84   AliAnalysisGUI      *fAliAnalysisGUI; //analysis gui pointer
85   AliTagFrame         *fTagFrame; //tag frame pointer
86   AliAlienBrowser     *fAliEnBrowser; //alien browser pointer
87
88   // local 
89   TGLabel             *fLocalLabel1; //label - local tags
90   TGTextEntry         *fLocalPath; //text box - local tags
91   TGButton            *fLocalButton, *fButtonInsert, *fButtonRun; //buttons
92   TGComboBox          *fComboEventTagCut; //combo box
93      
94   // Grid
95   TGLabel             *fGridLabel1; //label - grid tags
96   TGTextEntry         *fGridPath; //text box - grid tags
97   TGButton            *fGridButton, *fButtonInsert2, *fButtonRun2; //buttons
98   TGComboBox          *fComboEventTagCut2; //combo box
99
100   TGridResult         *fTagResult; //grid result
101   TChain              *fAnalysisChain; //tchain object
102
103   TGListBox           *fListBox; //list box
104   TGTransientFrame    *fBrowser; //frame
105   TGButton            *fBrowserButton; //browse button
106
107   // AliRoot Tag cut analysis 
108   AliTagAnalysis      *fAliTagAnalysis; //alitaganalysis object
109   AliRunTagCuts       *fAliRunCuts; //run cuts object
110   AliLHCTagCuts       *fAliLHCCuts; //lhc cuts object
111   AliDetectorTagCuts  *fAliDetectorCuts; //detector cuts object
112   AliEventTagCuts     *fAliEventCuts; //event cuts object
113   
114   const char          **fEventTagCutsName; //event tag names
115
116   ClassDef(AliTagAnalysisFrame, 0); // Tag Analysis Frame
117 };
118
119 #endif