Class to convert rawdata to digit
[u/mrichter/AliRoot.git] / MUON / AliMUONDigitMaker.h
CommitLineData
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
8/// \ingroup rec
9/// \class AliMUONDigitMaker
10/// \brief Raw data class for trigger and tracker chambers
11///
12/// Readding Raw data class for trigger and tracker chambers
13
14#include <TObject.h>
15#include "TStopwatch.h"
16
17
18class AliMpBusPatch;
19class AliMUONData;
20class AliMUONDigit;
21class AliMUONGlobalTrigger;
22class AliMUONLocalTrigger;
23
24class AliMpSegFactory;
25class AliMUONRawStreamTracker;
26class AliMUONRawStreamTrigger;
27
28class AliMUONDigitMaker : public TObject
29{
30 public:
31 AliMUONDigitMaker(AliMUONData* data); // Constructor
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);
39
40 AliMUONData* GetMUONData() const {return fMUONData;}
41 void SetMUONData(AliMUONData* data) {fMUONData = data;}
42
43 Int_t GetMapping(Int_t buspatchId, UShort_t manuId,
44 UChar_t channelId, AliMUONDigit* digit );
45
46 void SetScalerEvent() {fScalerEvent = kTRUE;}
47
48 protected:
49 AliMUONDigitMaker(); // Default constructor
50 AliMUONDigitMaker (const AliMUONDigitMaker& rhs); // copy constructor
51 AliMUONDigitMaker& operator=(const AliMUONDigitMaker& rhs); // assignment operator
52
53 private:
54
55 AliMUONData* fMUONData; //! Data container for MUON subsystem
56
57 AliMpSegFactory* fSegFactory; //! Mapping segmentation factory
58
59 AliMpBusPatch* fBusPatchManager; //! buspatch versus DE's & DDL
60
61 Bool_t fScalerEvent; //! flag to generates scaler event
62
63 AliMUONRawStreamTracker* fRawStreamTracker; //!pointer of raw stream for tracker
64 AliMUONRawStreamTrigger* fRawStreamTrigger; //!pointer of raw stream for trigger
65
66 AliMUONDigit* fDigit; //! pointer to digits
67
68 AliMUONLocalTrigger* fLocalTrigger; //! pointer to local trigger
69 AliMUONGlobalTrigger* fGlobalTrigger; //! pointer to local trigger
70
71 TStopwatch fTrackerTimer; //!
72 TStopwatch fTriggerTimer; //!
73 TStopwatch fMappingTimer; //!
74
75 ClassDef(AliMUONDigitMaker,1) // MUON digit maker from rawdata
76};
77
78#endif