]>
Commit | Line | Data |
---|---|---|
d810d0de | 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 | **************************************************************************/ | |
a282bf09 | 9 | #ifndef ALIEVE_TRDLoader_H |
10 | #define ALIEVE_TRDLoader_H | |
11 | ||
12 | //////////////////////////////////////////////////////////////////////// | |
13 | // // - ALIEVE implementation - | |
edf0c4a0 | 14 | // Loader for the TRD detector - base class |
d810d0de | 15 | // - AliEveTRDLoader - loader of TRD data (simulation + measured) |
16 | // - AliEveTRDLoaderEditor - UI | |
a282bf09 | 17 | // |
18 | // by A.Bercuci (A.Bercuci@gsi.de) Fri Oct 27 2006 | |
19 | //////////////////////////////////////////////////////////////////////// | |
20 | ||
84aff7a4 | 21 | #include <TEveElement.h> |
a282bf09 | 22 | #include <TGedFrame.h> |
84aff7a4 | 23 | #include <TString.h> |
a282bf09 | 24 | |
a282bf09 | 25 | class AliTRDv1; |
14217b5f | 26 | class AliTRDgeometry; |
a282bf09 | 27 | |
a282bf09 | 28 | class TGNumberEntry; |
29 | class TGColorSelect; | |
30 | class TGTextEntry; | |
31 | class TTree; | |
84aff7a4 | 32 | |
33 | class TEveGValuator; | |
34 | ||
d810d0de | 35 | class AliEveTRDChamber; |
36 | class AliEveTRDLoaderManager; | |
edf0c4a0 | 37 | enum TRDDataTypes{ |
a282bf09 | 38 | kHits = 0, |
39 | kDigits = 1, | |
40 | kClusters = 2, | |
edf0c4a0 | 41 | kTracks = 3, |
42 | kRawRoot = 4, | |
43 | kRawData = 5 | |
a282bf09 | 44 | }; |
d810d0de | 45 | class AliEveTRDLoader : public TEveElementList |
a282bf09 | 46 | { |
d810d0de | 47 | friend class AliEveTRDLoaderEditor; |
a282bf09 | 48 | public: |
d810d0de | 49 | AliEveTRDLoader(const Text_t* n="AliEveTRDLoader", const Text_t* t=0x0); |
50 | ~AliEveTRDLoader(); | |
edf0c4a0 | 51 | virtual void Paint(Option_t *option=""); |
52 | virtual void SetDataType(TRDDataTypes type); | |
a282bf09 | 53 | protected: |
f5790a4c | 54 | virtual void AddChambers(int sm=-1, int stk=-1, int ly=-1); |
d810d0de | 55 | virtual AliEveTRDChamber* GetChamber(int d); |
f5790a4c | 56 | virtual Bool_t GoToEvent(int ev); |
14217b5f | 57 | virtual Bool_t LoadClusters(TTree *tC); |
58 | virtual Bool_t LoadDigits(TTree *tD); | |
14217b5f | 59 | virtual Bool_t LoadTracklets(TTree *tT); |
60 | virtual Bool_t Open(const char *file, const char *dir = "."); | |
14217b5f | 61 | virtual void Unload(); |
edf0c4a0 | 62 | |
a282bf09 | 63 | protected: |
14217b5f | 64 | Bool_t kLoadHits, kLoadDigits, kLoadClusters, kLoadTracks; |
65 | Int_t fSM, fStack, fLy; // supermodule, stack, layer | |
66 | TString fFilename; // name of data file | |
67 | TString fDir; // data directory | |
68 | Int_t fEvent; // current event to be displayed | |
69 | ||
edf0c4a0 | 70 | |
71 | AliTRDv1 *fTRD; // the TRD detector | |
72 | AliTRDgeometry *fGeo; // the TRD geometry | |
a282bf09 | 73 | |
d810d0de | 74 | ClassDef(AliEveTRDLoader, 1) // Alieve Loader class for the TRD detector |
a282bf09 | 75 | }; |
76 | ||
77 | ||
78 | ||
d810d0de | 79 | class AliEveTRDLoaderEditor : public TGedFrame |
a282bf09 | 80 | { |
81 | public: | |
d810d0de | 82 | AliEveTRDLoaderEditor(const TGWindow* p=0, Int_t width = 170, Int_t height = 30, UInt_t options = kChildFrame, Pixel_t back = GetDefaultFrameBackground()); |
83 | ~AliEveTRDLoaderEditor(); | |
a282bf09 | 84 | |
85 | virtual void AddChambers(); | |
86 | virtual void FileOpen(); | |
87 | virtual void Load(); | |
edf0c4a0 | 88 | virtual void SetEvent(Double_t ev){fM->fEvent = (Int_t)ev;} |
a282bf09 | 89 | virtual void SetModel(TObject* obj); |
90 | ||
a282bf09 | 91 | protected: |
d810d0de | 92 | AliEveTRDLoader *fM; |
84aff7a4 | 93 | TGTextEntry *fFile; |
94 | TEveGValuator *fEvent; | |
95 | TEveGValuator *fSMNumber, *fStackNumber, *fPlaneNumber; | |
a282bf09 | 96 | |
d810d0de | 97 | ClassDef(AliEveTRDLoaderEditor,1) // Editor for AliEveTRDLoader |
a282bf09 | 98 | }; |
edf0c4a0 | 99 | |
a282bf09 | 100 | #endif |