running local for SP and LYZEP and new histograms for QC
[u/mrichter/AliRoot.git] / TRD / AliTRDgtuSim.h
1 #ifndef ALITRDGTUSIM_H
2 #define ALITRDGTUSIM_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id: AliTRDgtuSim.h 27496 2008-07-22 08:35:45Z cblume $ */
7
8 // --------------------------------------------------------
9 // 
10 // GTU simulation
11 //
12 // --------------------------------------------------------
13
14 #include "TObject.h"
15
16 class AliRunLoader;
17 class AliLoader;
18 class AliESDEvent;
19
20 class AliTRDgtuTMU;
21 class TTree;
22 class TList;
23
24 class AliTRDgtuSim : public TObject {
25  public:
26   AliTRDgtuSim(AliRunLoader *rl = 0x0);
27   ~AliTRDgtuSim();
28
29   Bool_t LoadTracklets(AliLoader *loader);
30
31   Bool_t RunGTU(AliLoader *loader, AliESDEvent *esd = 0x0);
32   Bool_t RunGTUFromTrackletFile(TString filename, Int_t event, Int_t noev = 1);
33
34   TTree* GetTreeOfTracks() { return fTrackTree; }
35   Bool_t WriteTracksToTree(TList *ListOfTracks, Int_t event = 0); 
36   Bool_t WriteTracksToDataFile(TList *ListOfTracks, Int_t event);
37   Bool_t WriteTreesToFile();
38   Bool_t WriteTracksToESD(TList *ListOfTracks, AliESDEvent *esd);
39
40  protected:
41   AliRunLoader  *fRunLoader;    //!
42   AliTRDgtuTMU  *fTMU;          // pointer to TMU simulation class
43   TClonesArray  *fTrackletArray;        // array of tracklets
44   TTree         *fTrackTree;    // tree to hold the tracks of one event, used for writing in WriteTracksToFile()
45   TTree         *fTrackletTree; // tree to hold the gtu tracklets
46
47  private:
48   AliTRDgtuSim& operator=(const AliTRDgtuSim &rhs); // not implemented
49   AliTRDgtuSim(const AliTRDgtuSim &rhs); // not implemented
50
51   ClassDef(AliTRDgtuSim, 1);
52 };
53
54 #endif