]>
Commit | Line | Data |
---|---|---|
f6762c71 | 1 | #ifndef ALIMUONRAWDATA_H |
2 | #define ALIMUONRAWDATA_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
1195fa7b | 6 | /* Raw data class for trigger and tracker chambers */ |
7 | ||
f6762c71 | 8 | #include <TObject.h> |
69be760c | 9 | #include "AliMUONSubEventTracker.h" |
69be760c | 10 | |
f6762c71 | 11 | class TClonesArray; |
12 | class AliLoader; | |
13 | class AliMUONData; | |
14 | class AliMUONDigit; | |
15 | class AliMUONDDLTracker; | |
69be760c | 16 | class AliMUONDDLTrigger; |
c8b4255f | 17 | class AliMUONGlobalTrigger; |
1195fa7b | 18 | class AliMUONSubEventTrigger; |
1197ff51 | 19 | class AliRawReader; |
ce6a659c | 20 | class AliMUONGlobalTrigger; |
f6762c71 | 21 | |
22 | class AliMUONRawData : public TObject | |
23 | { | |
24 | public: | |
25 | AliMUONRawData(AliLoader* loader); // Constructor | |
26 | virtual ~AliMUONRawData(void); // Destructor | |
27 | ||
28 | // write raw data | |
1197ff51 | 29 | Int_t Digits2Raw(); |
30 | Int_t Raw2Digits(AliRawReader* rawReader); | |
f6762c71 | 31 | |
32 | AliMUONData* GetMUONData() {return fMUONData;} | |
33 | ||
1195fa7b | 34 | void AddData1(const AliMUONSubEventTracker* event) { |
69be760c | 35 | TClonesArray &temp = *fSubEventArray[0]; |
36 | new(temp[temp.GetEntriesFast()])AliMUONSubEventTracker(*event); | |
37 | } | |
38 | ||
1195fa7b | 39 | void AddData2(const AliMUONSubEventTracker* event) { |
69be760c | 40 | TClonesArray &temp = *fSubEventArray[1]; |
41 | new(temp[temp.GetEntriesFast()])AliMUONSubEventTracker(*event); | |
42 | } | |
43 | ||
44 | void GetDummyMapping(Int_t iCh, Int_t iCath, const AliMUONDigit* digit, Int_t &busPatchId, | |
f1501d74 | 45 | UShort_t &manuId, UChar_t &channelId); |
69be760c | 46 | |
1197ff51 | 47 | void GetInvDummyMapping(Int_t iCh, Int_t buspatchId, UShort_t manuId, |
48 | UChar_t channelId, AliMUONDigit* digit ); | |
49 | ||
50 | ||
1195fa7b | 51 | Int_t GetGlobalTriggerPattern(const AliMUONGlobalTrigger* gloTrg); |
ce6a659c | 52 | AliMUONGlobalTrigger* GetGlobalTriggerPattern(Int_t gloTrg); |
69be760c | 53 | |
f6762c71 | 54 | protected: |
55 | AliMUONRawData(); // Default constructor | |
56 | AliMUONRawData (const AliMUONRawData& rhs); // copy constructor | |
57 | AliMUONRawData& operator=(const AliMUONRawData& rhs); // assignment operator | |
58 | ||
59 | private: | |
f6762c71 | 60 | |
1195fa7b | 61 | AliMUONData* fMUONData; //! Data container for MUON subsystem |
1195fa7b | 62 | |
1195fa7b | 63 | AliLoader* fLoader; //! alice loader |
1195fa7b | 64 | |
65 | FILE* fFile1; //! DDL binary file pointer one per 1/2 chamber | |
66 | FILE* fFile2; //! DDL binary file pointer one per 1/2 chamber | |
69be760c | 67 | |
1195fa7b | 68 | TClonesArray* fSubEventArray[2]; //! array to sub event tracker |
ce6a659c | 69 | |
1195fa7b | 70 | AliMUONDDLTracker* fDDLTracker; //! DDL tracker class pointers |
71 | AliMUONDDLTrigger* fDDLTrigger; //! DDL trigger class pointers | |
69be760c | 72 | |
73 | // writing raw data | |
74 | Int_t WriteTrackerDDL(Int_t iCh); | |
75 | Int_t WriteTriggerDDL(); | |
f6762c71 | 76 | |
1197ff51 | 77 | Int_t ReadTrackerDDL(AliRawReader* rawReader); |
78 | Int_t ReadTriggerDDL(AliRawReader* rawReader); | |
79 | ||
80 | ClassDef(AliMUONRawData,1) // MUON cluster reconstructor in ALICE | |
f6762c71 | 81 | }; |
82 | ||
83 | #endif |