]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONRawStreamTrigger.h
Compilation with Root v5-15-3
[u/mrichter/AliRoot.git] / MUON / AliMUONRawStreamTrigger.h
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                               */
5
6 /*$Id$*/
7
8 /// \ingroup base
9 /// \class AliMUONRawStreamTrigger
10 /// \brief Class for reading MUON raw digits
11 ///
12 /// \author Christian Finck
13 ///
14 ///////////////////////////////////////////////////////////////////////////////
15 ///
16 /// This class provides access to MUON digits in raw data.
17 ///
18 ///////////////////////////////////////////////////////////////////////////////
19
20 #include <TObject.h>
21 #include "AliMUONPayloadTrigger.h"
22
23 class AliRawReader;
24 class AliMUONDDLTrigger;
25
26
27 class AliMUONRawStreamTrigger: public TObject {
28   public :
29     AliMUONRawStreamTrigger();
30     AliMUONRawStreamTrigger(AliRawReader* rawReader);
31     virtual ~AliMUONRawStreamTrigger();
32
33     virtual Bool_t   Next();
34     virtual Bool_t   NextDDL();
35
36     Int_t GetMaxDDL() const {return fMaxDDL;}
37     Int_t GetMaxReg() const {return fPayload->GetMaxReg();}
38     Int_t GetMaxLoc() const {return fPayload->GetMaxLoc();}
39
40
41     void SetMaxDDL(Int_t ddl);
42     void SetMaxReg(Int_t reg);
43     void SetMaxLoc(Int_t loc);
44
45
46     void SetReader(AliRawReader* rawReader) {fRawReader = rawReader;}
47
48     AliMUONDDLTrigger* GetDDLTrigger() const {return fPayload->GetDDLTrigger();}
49     Int_t              GetDDL()        const {return fDDL - 1;}
50
51   private :
52
53     AliRawReader*    fRawReader;     ///< object for reading the raw data
54     AliMUONPayloadTrigger* fPayload; ///< pointer to payload decoder
55
56     Int_t  fDDL;          ///< number of DDL
57     Int_t  fSubEntries;   ///< entries of buspatch structure
58     Bool_t fNextDDL;      ///< flag for next DDL to be read
59     Int_t  fMaxDDL;       ///< maximum number of DDL in DATE file
60
61     AliMUONRawStreamTrigger(const AliMUONRawStreamTrigger& stream);
62     AliMUONRawStreamTrigger& operator = (const AliMUONRawStreamTrigger& stream);
63
64     ClassDef(AliMUONRawStreamTrigger, 3)    // base class for reading MUON trigger rawdata
65 };
66
67 #endif