]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/Reve/CascadeEditors.h
From Ludovic, new files for visualization of cascades.
[u/mrichter/AliRoot.git] / EVE / Reve / CascadeEditors.h
1 /***********************************************************************
2   This editor appears in the Reve window when cascades are visualize.
3 It allows to select the cascades as a function of some useful parameters.
4
5 Ludovic Gaudichet (gaudichet@to.infn.it)
6 ************************************************************************/
7
8
9 #ifndef REVE_CascadeEditors_H
10 #define REVE_CascadeEditors_H
11
12 #include <TGedFrame.h>
13
14 class TGCheckButton;
15 class TGNumberEntry;
16 class TGColorSelect;
17 class TRootEmbeddedCanvas;
18 class TH1F;
19 class TGCompositeFrame;
20 class TGTab;
21
22 namespace Reve {
23
24 class RGValuator;
25 class RGDoubleValuator;
26
27 class CascadeList;
28
29 class CascadeListEditor : public TGedFrame
30 {
31   CascadeListEditor(const CascadeListEditor&);            // Not implemented
32   CascadeListEditor& operator=(const CascadeListEditor&); // Not implemented
33
34 protected:
35   CascadeList* fMList; // fModel dynamic-casted to CascadeListEditor
36
37   TGCheckButton*     fRnrV0Daughters;
38   TGCheckButton*     fRnrV0path;
39   TGCheckButton*     fRnrVtx;
40   TGCheckButton*     fRnrBach;
41   TGCheckButton*     fRnrCasPath;
42
43   TGTab *fMainTabA;
44   TGTab *fMainTabB;
45   TGTab *fTabA[3];
46   TGTab *fTabB[3];
47   static const Int_t fgkNRange = 14;
48   RGDoubleValuator    *fRange[fgkNRange];
49
50   static const Int_t fgkNCanvas = 15;
51   TRootEmbeddedCanvas *fCanvasA[fgkNCanvas];
52   TRootEmbeddedCanvas *fCanvasB[fgkNCanvas];
53
54   TGCompositeFrame*  AddTab(TGTab *tab, Int_t i, Int_t can, char *name);
55   TGCompositeFrame** CreateTab(TGTab **pMainTab, TGTab **ptab, Int_t can);
56
57   void UpdateAll(Int_t iCanA);
58   void AddSelectTab();
59   void AddSeeTab();
60   void AddValuator(TGCompositeFrame* frame, char *name,
61                    Float_t min, Float_t max, Int_t pres, char *func,
62                    Int_t iHist);
63
64
65 public:
66   CascadeListEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
67                   UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
68   ~CascadeListEditor();
69
70   virtual void SetModel(TObject* obj);
71   void DoRnrV0Daughters();
72   void DoRnrV0path();
73   void DoRnrVtx();
74   void DoRnrBach();
75   void DoRnrCasPath();
76
77   void FillCanvas();
78   void UpdateSelectedTab();
79   void AdjustHist(Int_t iHist);
80   void ResetCuts();
81
82   void MassXiRange();
83   void MassOmegaRange();
84   void IndexRange();
85   void CosPointingRange();
86   void BachV0DCARange();
87   void RadiusRange();
88   void PtRange();
89   void PseudoRapRange();
90   void NegPtRange();
91   void NegEtaRange();
92   void PosPtRange();
93   void PosEtaRange();
94   void BachPtRange();
95   void BachEtaRange();
96
97   ClassDef(CascadeListEditor, 1); // Editor for CascadeList
98 }; // endclass CascadeListEditor
99
100 }
101
102 #endif