1 #ifndef ALIDISPLAYFRAME_H
2 #define ALIDISPLAYFRAME_H
4 /* Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 /////////////////////////////////////////////////////////////////////////
8 // ALICE DISPLAY FRAME CLASS //
9 // Author: Mayeul ROUSSELET //
10 // e-mail: Mayeul.Rousselet@cern.ch //
11 // Last update:26/08/2003 //
12 /////////////////////////////////////////////////////////////////////////
15 #include <RQ_OBJECT.h>
16 #include <TRootEmbeddedCanvas.h>
17 #include <TGDimension.h>
20 #include "AliDisplayClusters.h"
22 class TGCompositeFrame;
28 class AliDisplayFrame{
29 //This class implements the display of the event
33 AliDisplayFrame(const TGWindow *p, UInt_t w, UInt_t h);
34 virtual ~AliDisplayFrame();
37 TGCompositeFrame* GetDisplayFrame() const {return fMainFrame;};
38 TCanvas* GetMainCanvas() const {return fMainCanvas;};
39 Int_t GetPreviousW() const {return fPreviousW;};
40 Int_t GetPreviousH() const {return fPreviousH;};
41 TGDimension GetFrameDimension() const
42 {return ((TGCanvas*)fMainEmbeddedCanvas)->GetViewPort()->GetDefaultSize();};
43 Int_t GetNbActivePoints() const;
44 Int_t GetNbClusters() const
45 {return fClusters->GetNbClusters();};
48 void SetPreviousW(Int_t w){fPreviousW=w;};
49 void SetPreviousH(Int_t h){fPreviousH=h;};
50 void SetEditable(Bool_t b){gPad->SetEditable(b);};
52 void DoView(Int_t view);
53 void Draw(Float_t theta,Float_t phi,Float_t psi);
54 void DrawDetector(const char *name);
58 void LoadEnabledModules();
59 void LoadClusters(Int_t nevent);
60 void LoadHLTClusters(Int_t nevent);
63 void EnableDetector(const char *name);
64 void DisableDetector(const char *name);
65 void ExecuteEvent(Int_t event, Int_t px,Int_t py,TObject *);
66 void SavePadGIF(const char *file);
70 TGCompositeFrame *fMainFrame; // Main frame
71 TGCompositeFrame *fFrame1; // First frame
72 TGCompositeFrame *fFrame2; // Second frame
73 TGTab *fMainTab; // Main tab
74 Bool_t fAllViews; // Flag for all views
75 TRootEmbeddedCanvas *fMainEmbeddedCanvas;//embedded Canvas which contains the main view(s)
76 TRootEmbeddedCanvas *fSelectionEmbeddedCanvas; // Selected embedded canvas
77 TCanvas *fMainCanvas; // Main canvas
78 TCanvas *fSelectionCanvas; // Selection canvas
79 Float_t fClipMin; // Min. clip
80 Float_t fClipMax; // Max. clip
81 Int_t fPreviousW;// Previous width
82 Int_t fPreviousH;// Previous height
83 Float_t fRange; // Range
84 AliDisplayClusters *fClusters; // Clusters
85 AliDisplayHLT *fHLT; // HLT display
86 TObjArray *fPoints; // Array of points
87 TObjArray *fPoints2;// Array of points
88 TObjArray *fModules;// Array of modules
89 Int_t fNbModules; // Number of modules
90 Bool_t *fActivePoints; // Flags for active points
91 TObjArray *fPolyMarkers;//Array for TPolyMarker3D
92 Float_t *fClustersPos;// Cluster position
93 Int_t fNbClusters;// Number of clusters
95 RQ_OBJECT("AliDisplayFrame")
97 ClassDef(AliDisplayFrame,0);