]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EVE/Reve/PointSet.h
This commit was generated by cvs2svn to compensate for changes in r13732,
[u/mrichter/AliRoot.git] / EVE / Reve / PointSet.h
CommitLineData
5a5a1232 1// $Header$
2
3#ifndef REVE_GuiPointSet_H
4#define REVE_GuiPointSet_H
5
6#include <Reve/PODs.h>
7#include <Reve/RenderElement.h>
8
9#include <TPointSet3D.h>
10
11class TTree;
12class TF3;
13class TGListTreeItem;
14
15namespace Reve {
16
17class PointSet : public TPointSet3D, public RenderElement
18{
19 friend class PointSetArray;
20
21private:
22 void Init();
23
24protected:
25 TString fTitle;
26
27public:
28 enum TreeVarType_e { TVT_XYZ, TVT_RPhiZ };
29
30 PointSet(Int_t n_points=0);
31 PointSet(const Text_t* name, Int_t n_points=0);
32 PointSet(const Text_t* name, TTree* tree,
33 TreeVarType_e tv_type=TVT_XYZ);
34
35 void Reset(Int_t n_points=0);
36
37 virtual const Text_t* GetTitle() const { return fTitle; }
38 virtual void SetTitle(const Text_t* t) { fTitle = t; }
39
40 virtual void SetMarkerColor(Color_t col)
41 { SetMainColor(col); }
42
43 virtual void Paint(Option_t* option="");
44
45 ClassDef(PointSet, 1);
46}; // endclass GuiPointSet
47
48/**************************************************************************/
49
50class PointSetArray : public TNamed, public RenderElementListBase
51{
52protected:
53 PointSet** fBins;
54 Int_t fNBins;
55 Double_t fMin, fCurMin;
56 Double_t fMax, fCurMax;
57 Double_t fBinWidth;
58 TString fQuantName;
59
60 Color_t fColor;
61
62public:
63 enum TreeVarType_e { TVT_XYZ, TVT_RPhiZ };
64
65 PointSetArray(const Text_t* name="PointSetArray",
66 const Text_t* title="");
67 virtual ~PointSetArray();
68
69 virtual Bool_t CanEditMainColor() { return true; }
70 virtual void Paint(Option_t* option = "") { PaintElements(option); }
71
72 void InitBins(TGListTreeItem* tree_item, const Text_t* quant_name,
73 Int_t nbins, Double_t min, Double_t max);
74 void Fill(Double_t quant, Double_t x, Double_t y, Double_t z);
75 void Fill(TF3* formula, TTree* tree, TreeVarType_e tv_type=TVT_XYZ);
76 void CloseBins(Int_t mark_style, Float_t mark_size);
77
78 Double_t GetMin() const { return fMin; }
79 Double_t GetCurMin() const { return fCurMin; }
80 Double_t GetMax() const { return fMax; }
81 Double_t GetCurMax() const { return fCurMax; }
82
83 void SetRange(Double_t min, Double_t max);
84
85 void MakeScrollbar(); // *MENU*
86 void HandleScrollEvent();
87
88 ClassDef(PointSetArray, 1);
89};
90
91}
92
93#endif