]>
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; |
f6762c71 | 20 | |
21 | class AliMUONRawData : public TObject | |
22 | { | |
23 | public: | |
24 | AliMUONRawData(AliLoader* loader); // Constructor | |
25 | virtual ~AliMUONRawData(void); // Destructor | |
26 | ||
27 | // write raw data | |
1197ff51 | 28 | Int_t Digits2Raw(); |
29 | Int_t Raw2Digits(AliRawReader* rawReader); | |
f6762c71 | 30 | |
31 | AliMUONData* GetMUONData() {return fMUONData;} | |
32 | ||
1195fa7b | 33 | void AddData1(const AliMUONSubEventTracker* event) { |
69be760c | 34 | TClonesArray &temp = *fSubEventArray[0]; |
35 | new(temp[temp.GetEntriesFast()])AliMUONSubEventTracker(*event); | |
36 | } | |
37 | ||
1195fa7b | 38 | void AddData2(const AliMUONSubEventTracker* event) { |
69be760c | 39 | TClonesArray &temp = *fSubEventArray[1]; |
40 | new(temp[temp.GetEntriesFast()])AliMUONSubEventTracker(*event); | |
41 | } | |
42 | ||
43 | void GetDummyMapping(Int_t iCh, Int_t iCath, const AliMUONDigit* digit, Int_t &busPatchId, | |
f1501d74 | 44 | UShort_t &manuId, UChar_t &channelId); |
69be760c | 45 | |
1197ff51 | 46 | void GetInvDummyMapping(Int_t iCh, Int_t buspatchId, UShort_t manuId, |
47 | UChar_t channelId, AliMUONDigit* digit ); | |
48 | ||
49 | ||
1195fa7b | 50 | Int_t GetGlobalTriggerPattern(const AliMUONGlobalTrigger* gloTrg); |
69be760c | 51 | |
f6762c71 | 52 | protected: |
53 | AliMUONRawData(); // Default constructor | |
54 | AliMUONRawData (const AliMUONRawData& rhs); // copy constructor | |
55 | AliMUONRawData& operator=(const AliMUONRawData& rhs); // assignment operator | |
56 | ||
57 | private: | |
58 | static const Int_t fgkDefaultPrintLevel; // Default print level | |
59 | ||
1195fa7b | 60 | AliMUONData* fMUONData; //! Data container for MUON subsystem |
1195fa7b | 61 | |
1195fa7b | 62 | AliLoader* fLoader; //! alice loader |
1195fa7b | 63 | |
64 | FILE* fFile1; //! DDL binary file pointer one per 1/2 chamber | |
65 | FILE* fFile2; //! DDL binary file pointer one per 1/2 chamber | |
69be760c | 66 | |
1195fa7b | 67 | TClonesArray* fSubEventArray[2]; //! array to sub event tracker |
68 | ||
69 | TClonesArray* fSubEventTrigArray[2]; //! array to sub event trigger | |
70 | ||
71 | AliMUONDDLTracker* fDDLTracker; //! DDL tracker class pointers | |
72 | AliMUONDDLTrigger* fDDLTrigger; //! DDL trigger class pointers | |
69be760c | 73 | |
74 | // writing raw data | |
75 | Int_t WriteTrackerDDL(Int_t iCh); | |
76 | Int_t WriteTriggerDDL(); | |
f6762c71 | 77 | |
1197ff51 | 78 | Int_t ReadTrackerDDL(AliRawReader* rawReader); |
79 | Int_t ReadTriggerDDL(AliRawReader* rawReader); | |
80 | ||
81 | ClassDef(AliMUONRawData,1) // MUON cluster reconstructor in ALICE | |
f6762c71 | 82 | }; |
83 | ||
84 | #endif |