1 #ifndef ALIEVE_MUONData_H
2 #define ALIEVE_MUONData_H
15 class AliMUONRawStreamTracker;
16 class AliMUONRawStreamTrigger;
18 class AliMpSegFactory;
20 class AliMUONLocalTriggerBoard;
21 class AliMUONLocalStruct;
22 class AliMUONLocalStruct;
26 class MUONChamberData;
28 class MUONData : public TObject, public Reve::ReferenceCount
33 std::vector<MUONChamberData*> fChambers; // vector of 14 chambers
35 static AliRawReader* fgRawReader; // raw reader
36 static AliMUONRawStreamTracker* fgRawStreamTracker; // tracker raw streamer
37 static AliMUONRawStreamTrigger* fgRawStreamTrigger; // trigger raw streamer
38 static AliMpSegFactory* fgSegFactory; // segmentation mapping
39 static AliMpDDLStore* fgBusPatchManager; // bus mapping
41 Int_t fNTracks; // number of tracks
42 Float_t* fTrackPoints; // array with track points coordinates
43 Int_t fNPoints; // total number of track points
45 Int_t GetTrackerMapping(Int_t buspatchId, UShort_t manuId,
46 UChar_t channelId, AliMUONDigit* digit );
48 Int_t GetTriggerMapping(AliMUONLocalTriggerBoard* localBoard,
49 AliMUONLocalStruct* localStruct,
52 void GetTriggerChamber(AliMUONLocalStruct* localStruct,
53 Int_t& xyPattern, Int_t& iChamber, Int_t& iCath,
60 MUONData(const MUONData&);
61 MUONData& operator=(const MUONData&);
63 void LoadDigits(TTree* tree);
64 void LoadTracks(TTree* tree);
65 void LoadRaw(TString fileName);
66 void LoadRawTracker();
67 void LoadRawTrigger();
69 void CreateChamber(Int_t chamber);
70 void CreateAllChambers();
71 void DropAllChambers();
72 void DeleteAllChambers();
74 MUONChamberData* GetChamberData(Int_t chamber);
76 Int_t GetNTracks() { return fNTracks; };
77 Int_t GetNPoints() { return fNPoints; };
78 Float_t* GetTrackPoints() { return fTrackPoints; };
80 ClassDef(MUONData,1); // Manages MUON data for one event