]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/Alieve/AliEveTRDModule.h
Temporary fix to avoid xrootd thrashing
[u/mrichter/AliRoot.git] / EVE / Alieve / AliEveTRDModule.h
1 // $Id$
2 // Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
3
4 /**************************************************************************
5  * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
6  * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for          *
7  * full copyright notice.                                                 *
8  **************************************************************************/
9 #ifndef ALIEVE_TRDModule_H
10 #define ALIEVE_TRDModule_H
11
12 /////////////////////////////////////////////////////////////////////////
13 //
14 // - AliEVE implementation -
15 // The common structure of a TRD module (SM, Stack or Chamber)
16 //    - AliEveTRDModule - structure of TRD module for visualisation
17 //    - AliEveTRDModuleEditor - UI
18 //
19 // by A.Bercuci (A.Bercuci@gsi.de)   Fri Oct 27 2006
20 ///////////////////////////////////////////////////////////////////////
21
22 #ifndef ROOT_TNamed
23 #include <TNamed.h>
24 #endif
25
26 #ifndef ROOT_TGedFrame
27 #include <TGedFrame.h>
28 #endif
29
30 class TObject;
31 class TGWindow;
32 class TGCheckButton;
33 class TGNumberEntry;
34 class TGColorSelect;
35
36
37         class AliEveTRDModule : public TNamed
38         {
39         friend class AliEveTRDModuleEditor;
40         friend class AliEveTRDNode;
41         friend class AliEveTRDChamber;
42         public:
43                 AliEveTRDModule(const char *typ="XXX", Int_t id=0);
44                 virtual ~AliEveTRDModule() {}
45
46                 virtual Bool_t GetDigitsBox(){return fDigitsBox;}
47                 virtual Bool_t GetDigitsLog(){return fDigitsLog;}
48                 virtual UShort_t GetDigitsThreshold(){return fDigitsThreshold;}
49                 virtual Int_t   GetID(){return fDet;}
50                 virtual void    Paint(Option_t* option="")=0;
51                 virtual void    Reset()=0;
52
53         protected:
54                 // UI section
55                 Bool_t  fLoadHits, fRnrHits;
56                 Bool_t  fLoadDigits, fRnrDigits, fDigitsLog, fDigitsBox;
57                 Bool_t  kDigitsNeedRecompute;
58
59                 Bool_t  fLoadRecPoints, fRnrRecPoints;
60                 Bool_t  fLoadTracklets, fRnrTracklets;
61
62                 Int_t fDet; // detector number
63                 UShort_t        fDigitsThreshold; // digits threshold
64         ClassDef(AliEveTRDModule,1) // Structure holder for TRD chamber
65         };
66
67
68         class AliEveTRDModuleEditor : public TGedFrame
69         {
70         public:
71                 AliEveTRDModuleEditor(const TGWindow* p=0, Int_t width = 170, Int_t height = 30, UInt_t options = kChildFrame, Pixel_t back = GetDefaultFrameBackground());
72                 ~AliEveTRDModuleEditor();
73
74                 virtual void SetModel(TObject* obj);
75
76                 void    ModifyDigitsView();
77                 void    SetThreshold(Long_t thres);
78                 void    UpdateChamber();
79                 void    UpdateClusters(Pixel_t);
80                 void    UpdateHits(Pixel_t);
81
82         protected:
83                 AliEveTRDModule* fM;
84
85         private:
86                 TGCheckButton *fDisplayHits;
87                 TGColorSelect *fHitsColor;
88                 TGCheckButton *fDisplayDigits, *fToggleLog, *fToggleBox, *fThreshold;
89                 TGNumberEntry   *fThresValue;
90                 TGCheckButton *fDisplayClusters;
91                 TGColorSelect *fClustersColor;
92                 TGCheckButton *fDisplayTracks;
93
94         ClassDef(AliEveTRDModuleEditor,1) // Editor for AliEveTRDModule
95         };
96 #endif