]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/Alieve/MUONData.h
41f64d293d19d3b4609fda6165e3bc1990be05e8
[u/mrichter/AliRoot.git] / EVE / Alieve / MUONData.h
1 #ifndef ALIEVE_MUONData_H
2 #define ALIEVE_MUONData_H
3
4 #include <Reve/Reve.h>
5
6 #include <TObject.h>
7
8 #include <vector>
9
10 class TTree;
11 class TString;
12
13 class AliRawReader;
14
15 namespace Alieve {
16
17 class MUONChamberData;
18
19 class MUONData : public TObject, public Reve::ReferenceCount
20 {
21
22  protected:
23
24   std::vector<MUONChamberData*>   fChambers;           // vector of 14 chambers
25
26   static AliRawReader*            fgRawReader;         // raw reader
27
28   Int_t fNTrackList;      // number of MC tracks which have hits
29   Int_t fTrackList[256];  // list of MC tracks which have hits
30
31  public:
32
33   MUONData();
34   virtual ~MUONData();
35
36   MUONData(const MUONData&);
37   MUONData& operator=(const MUONData&);
38
39   void Reset();
40
41   void LoadDigits(TTree* tree);
42   void LoadRecPoints(TTree* tree);
43   void LoadHits(TTree* tree);
44   void LoadRaw(TString fileName);
45
46   void CreateChamber(Int_t chamber);
47   void CreateAllChambers();
48   void DropAllChambers();
49   void DeleteAllChambers();
50
51   void  RegisterTrack(Int_t track);
52   Int_t GetNTrackList() { return fNTrackList; }
53   Int_t GetTrack(Int_t index);
54
55   MUONChamberData* GetChamberData(Int_t chamber);
56
57   ClassDef(MUONData,1);           // Manages MUON data for one event
58
59 };
60
61 }
62
63 #endif