]>
Commit | Line | Data |
---|---|---|
a3283a4c | 1 | #ifndef ALIMUONDIGITMAKER_H |
2 | #define ALIMUONDIGITMAKER_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /*$Id$*/ | |
7 | ||
241560c2 | 8 | /// \ingroup base |
a3283a4c | 9 | /// \class AliMUONDigitMaker |
78649106 | 10 | /// \brief Reading Raw data class for trigger and tracker chambers |
a3283a4c | 11 | /// |
78649106 | 12 | // Author: Ch, Finck |
a3283a4c | 13 | |
14 | #include <TObject.h> | |
15 | #include "TStopwatch.h" | |
00e86732 | 16 | class AliRawReader; |
a3283a4c | 17 | class AliMUONData; |
18 | class AliMUONDigit; | |
19 | class AliMUONGlobalTrigger; | |
20 | class AliMUONLocalTrigger; | |
d53fb0de | 21 | class AliMUONTriggerCrateStore; |
d2d759cf | 22 | class AliMUONLocalTriggerBoard; |
23 | class AliMUONLocalStruct; | |
a3283a4c | 24 | |
a3283a4c | 25 | class AliMUONRawStreamTracker; |
26 | class AliMUONRawStreamTrigger; | |
27 | ||
28 | class AliMUONDigitMaker : public TObject | |
29 | { | |
30 | public: | |
241560c2 | 31 | AliMUONDigitMaker(Bool_t digit = kTRUE); // Constructor |
a3283a4c | 32 | virtual ~AliMUONDigitMaker(void); // Destructor |
33 | ||
34 | // write raw data | |
35 | Int_t Raw2Digits(AliRawReader* rawReader); | |
36 | ||
37 | Int_t ReadTrackerDDL(AliRawReader* rawReader); | |
38 | Int_t ReadTriggerDDL(AliRawReader* rawReader); | |
9265505b | 39 | |
40 | /// Return MUON data | |
a3283a4c | 41 | AliMUONData* GetMUONData() const {return fMUONData;} |
9265505b | 42 | /// Set MUON data |
a3283a4c | 43 | void SetMUONData(AliMUONData* data) {fMUONData = data;} |
44 | ||
45 | Int_t GetMapping(Int_t buspatchId, UShort_t manuId, | |
46 | UChar_t channelId, AliMUONDigit* digit ); | |
47 | ||
d2d759cf | 48 | Int_t TriggerDigits(AliMUONLocalTriggerBoard* localBoard, |
49 | AliMUONLocalStruct* localStruct, TList& digitList ); | |
50 | ||
51 | void GetTriggerChamber(AliMUONLocalStruct* localStruct, | |
52 | Int_t& xyPattern, Int_t& iChamber, Int_t& iCath, Int_t iCase ); | |
53 | ||
9265505b | 54 | /// Set flag to generates scaler event |
a3283a4c | 55 | void SetScalerEvent() {fScalerEvent = kTRUE;} |
56 | ||
e604ac4c | 57 | /// Disable trigger rawdata reading |
58 | void DisableTrigger() {fTriggerFlag = kFALSE;} | |
59 | ||
9265505b | 60 | /// Set Crate array |
fe5010dd | 61 | void SetCrateManager(AliMUONTriggerCrateStore* crateManager) {fCrateManager = crateManager;} |
62 | ||
a3283a4c | 63 | private: |
71a2d3aa | 64 | /// Not implemented |
65 | AliMUONDigitMaker (const AliMUONDigitMaker& rhs); // copy constructor | |
66 | /// Not implemented | |
67 | AliMUONDigitMaker& operator=(const AliMUONDigitMaker& rhs); // assignment operator | |
68 | ||
69 | void GetCrateName(Char_t* name, Int_t iDDL, Int_t iReg) const; | |
a3283a4c | 70 | |
829425a5 | 71 | AliMUONData* fMUONData; //!< Data container for MUON subsystem |
a3283a4c | 72 | |
829425a5 | 73 | Bool_t fScalerEvent; //!< flag to generates scaler event |
a3283a4c | 74 | |
241560c2 | 75 | Bool_t fDigitFlag; //!< true for Digit, false for SDigit |
76 | ||
e604ac4c | 77 | Bool_t fTriggerFlag; //!< true for reading also trigger rawdata |
78 | ||
829425a5 | 79 | AliMUONRawStreamTracker* fRawStreamTracker; //!< pointer of raw stream for tracker |
80 | AliMUONRawStreamTrigger* fRawStreamTrigger; //!< pointer of raw stream for trigger | |
a3283a4c | 81 | |
ce373c77 | 82 | AliMUONDigit* fDigit; //!< pointer to digits |
a3283a4c | 83 | |
ce373c77 | 84 | AliMUONLocalTrigger* fLocalTrigger; //!< pointer to local trigger |
85 | AliMUONGlobalTrigger* fGlobalTrigger; //!< pointer to local trigger | |
a3283a4c | 86 | |
d53fb0de | 87 | AliMUONTriggerCrateStore* fCrateManager; //!< Crate array |
88 | ||
ce373c77 | 89 | TStopwatch fTrackerTimer; //!< time watcher for tracker part |
90 | TStopwatch fTriggerTimer; //!< time watcher for trigger part | |
91 | TStopwatch fMappingTimer; //!< time watcher for mapping-tracker part | |
a3283a4c | 92 | |
93 | ClassDef(AliMUONDigitMaker,1) // MUON digit maker from rawdata | |
94 | }; | |
95 | ||
96 | #endif |