1 #ifndef ALIMUONRAWSTREAMTRIGGER_H
2 #define ALIMUONRAWSTREAMTRIGGER_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
9 /// \class AliMUONRawStreamTrigger
10 /// \brief Class for reading MUON raw digits
12 /// \author Christian Finck
14 ///////////////////////////////////////////////////////////////////////////////
16 /// This class provides access to MUON digits in raw data.
18 ///////////////////////////////////////////////////////////////////////////////
21 #include <TClonesArray.h>
24 class AliMUONDDLTrigger;
25 class AliMUONLocalStruct;
26 class AliMUONRegHeader;
28 class AliMUONRawStreamTrigger: public TObject {
30 AliMUONRawStreamTrigger();
31 AliMUONRawStreamTrigger(AliRawReader* rawReader);
32 AliMUONRawStreamTrigger(const AliMUONRawStreamTrigger& stream);
33 AliMUONRawStreamTrigger& operator = (const AliMUONRawStreamTrigger& stream);
34 virtual ~AliMUONRawStreamTrigger();
36 virtual Bool_t Next();
37 virtual Bool_t NextDDL();
38 virtual void ResetDDL();
40 Int_t GetMaxDDL() const {return fMaxDDL;}
41 Int_t GetMaxReg() const {return fMaxReg;}
42 Int_t GetMaxLoc() const {return fMaxLoc;}
45 void SetMaxDDL(Int_t ddl);
46 void SetMaxReg(Int_t reg);
47 void SetMaxLoc(Int_t loc);
50 void SetReader(AliRawReader* rawReader) {fRawReader = rawReader;}
52 AliMUONLocalStruct* GetLocalInfo() const {return fLocalStruct;}
53 AliMUONDDLTrigger* GetDDLTrigger() const {return fDDLTrigger;}
54 Int_t GetDDL() const {return fDDL - 1;}
58 AliRawReader* fRawReader; ///< object for reading the raw data
60 Int_t fDDL; ///< number of DDL
61 Int_t fSubEntries; ///< entries of buspatch structure
62 Bool_t fNextDDL; ///< flag for next DDL to be read
64 Int_t fMaxDDL; ///< maximum number of DDL in DATE file
65 Int_t fMaxReg; ///< maximum number of regional cards in DATE file
66 Int_t fMaxLoc; ///< maximum number of local cards in DATE file
68 AliMUONDDLTrigger* fDDLTrigger; //!< pointer for DDL structure
69 AliMUONRegHeader* fRegHeader; //!< pointer for regional structure
70 AliMUONLocalStruct* fLocalStruct; //!< pointer to local structure
72 ClassDef(AliMUONRawStreamTrigger, 2) // base class for reading MUON trigger rawdata