]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EVE/EveDet/AliEveTRDLoader.h
Move contents of EVE/Alieve to EVE/EveDet as most code will remain there.
[u/mrichter/AliRoot.git] / EVE / EveDet / AliEveTRDLoader.h
CommitLineData
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 *
51346b82 7 * full copyright notice. *
d810d0de 8 **************************************************************************/
a282bf09 9#ifndef ALIEVE_TRDLoader_H
10#define ALIEVE_TRDLoader_H
11
12////////////////////////////////////////////////////////////////////////
13// // - ALIEVE implementation -
51346b82 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 25class AliTRDv1;
14217b5f 26class AliTRDgeometry;
a282bf09 27
a282bf09 28class TGNumberEntry;
29class TGColorSelect;
30class TGTextEntry;
31class TTree;
84aff7a4 32
33class 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
51346b82 66 TString fFilename; // name of data file
14217b5f 67 TString fDir; // data directory
68 Int_t fEvent; // current event to be displayed
51346b82 69
edf0c4a0 70
71 AliTRDv1 *fTRD; // the TRD detector
72 AliTRDgeometry *fGeo; // the TRD geometry
51346b82 73
d810d0de 74 ClassDef(AliEveTRDLoader, 1) // Alieve Loader class for the TRD detector
a282bf09 75 };
76
77
51346b82 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);
51346b82 90
a282bf09 91 protected:
d810d0de 92 AliEveTRDLoader *fM;
84aff7a4 93 TGTextEntry *fFile;
94 TEveGValuator *fEvent;
95 TEveGValuator *fSMNumber, *fStackNumber, *fPlaneNumber;
51346b82 96
d810d0de 97 ClassDef(AliEveTRDLoaderEditor,1) // Editor for AliEveTRDLoader
a282bf09 98 };
51346b82 99
a282bf09 100#endif