]>
Commit | Line | Data |
---|---|---|
86ad02d4 | 1 | #ifndef ALICTPRAWSTREAM_H |
2 | #define ALICTPRAWSTREAM_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /////////////////////////////////////////////////////////////////////////////// | |
7 | /// | |
8 | /// This is a class for reading the CTP (trigger) DDL raw data | |
9 | /// The format of the raw data is taken form the trigger TDR | |
10 | /// | |
11 | /////////////////////////////////////////////////////////////////////////////// | |
12 | ||
13 | #include <TObject.h> | |
ce9ace8c | 14 | #include <TClonesArray.h> |
86ad02d4 | 15 | |
16 | class AliRawReader; | |
ce9ace8c | 17 | class AliTriggerIR; |
86ad02d4 | 18 | |
19 | class AliCTPRawStream: public TObject { | |
20 | public : | |
21 | AliCTPRawStream(AliRawReader* rawReader); | |
22 | virtual ~AliCTPRawStream(); | |
23 | ||
ce9ace8c | 24 | |
86ad02d4 | 25 | virtual void Reset(); |
26 | virtual Bool_t Next(); | |
27 | ||
4bc0c995 | 28 | UInt_t GetOrbitID() const { return fOrbit; } |
29 | UShort_t GetBCID() const { return fBC; } | |
30 | ||
31 | UInt_t GetL0Inputs() const { return fL0TriggerInputs; } | |
32 | UInt_t GetL1Inputs() const { return fL1TriggerInputs; } | |
33 | UShort_t GetL2Inputs() const { return fL2TriggerInputs; } | |
34 | ||
ce9ace8c | 35 | ULong64_t GetClassMask() const { return fClassMask; } // Provide the trigger class mask |
36 | UChar_t GetClusterMask() const { return fClusterMask; }// Provide the trigger cluster mask | |
37 | ||
38 | Int_t GetNIRs() const { return fIRArray.GetEntriesFast(); } | |
39 | const TClonesArray &GetAllIRs() const { return fIRArray; } | |
40 | const AliTriggerIR *GetIR(Int_t index) const { return (const AliTriggerIR*)fIRArray.UncheckedAt(index); } | |
41 | ||
86ad02d4 | 42 | |
43 | protected: | |
44 | AliCTPRawStream(const AliCTPRawStream& stream); | |
45 | AliCTPRawStream& operator = (const AliCTPRawStream& stream); | |
46 | ||
47 | private: | |
ce9ace8c | 48 | TClonesArray fIRArray; // array with trigger interaction records |
86ad02d4 | 49 | |
4bc0c995 | 50 | UInt_t fOrbit; // orbit ID as sent by CTP |
51 | UShort_t fBC; // bunch-crossing number as sent by CTP | |
52 | ||
53 | UInt_t fL0TriggerInputs; // L0 trigger inputs (24 bits) | |
54 | UInt_t fL1TriggerInputs; // L1 trigger inputs (24 bits) | |
55 | UShort_t fL2TriggerInputs; // L2 trigger inputs (12 bits) | |
56 | ||
86ad02d4 | 57 | ULong64_t fClassMask; // trigger class mask |
58 | UChar_t fClusterMask; // trigger cluster mask | |
59 | ||
60 | AliRawReader* fRawReader; // object for reading the raw data | |
61 | ||
86ad02d4 | 62 | ClassDef(AliCTPRawStream, 0) // class for reading CTP DDL raw data |
63 | }; | |
64 | ||
65 | #endif |