Update on trigger code (Rachid)
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALTriggerSTURawStream.h
1 #ifndef ALIEMCALTRIGGERSTURAWSTREAM_H
2 #define ALIEMCALTRIGGERSTURAWSTREAM_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  
9 Author: R. GUERNANE LPSC Grenoble CNRS/IN2P3
10 */
11
12 #include <TObject.h>
13 #include <map>
14
15 class AliRawReader;
16
17 class AliEMCALTriggerSTURawStream: public TObject 
18 {
19   public:
20                  AliEMCALTriggerSTURawStream();
21              AliEMCALTriggerSTURawStream(AliRawReader* rawReader);
22     virtual ~AliEMCALTriggerSTURawStream();
23   
24     virtual void   Reset();
25     virtual Bool_t ReadPayLoad();
26         virtual void   DumpPayLoad(const Option_t *option = "ALL") const;
27
28         virtual void                GetADC(Int_t iTRU, UInt_t ADC[]);
29         virtual UInt_t   GetL1JetThreshold() const {return   fL1JetThreshold;}
30         virtual UInt_t GetL1GammaThreshold() const {return fL1GammaThreshold;}
31         
32         virtual Int_t     GetNL0GammaPatch() const {return fNL0GammaPatch;}
33         virtual Int_t     GetNL1GammaPatch() const {return fNL1GammaPatch;}
34         virtual Int_t       GetNL1JetPatch() const {return fNL1JetPatch;}
35         virtual Int_t          GetRawData() const {return fGetRawData;}
36         
37         virtual Bool_t     GetL0GammaPatch(const Int_t i, Int_t& x, Int_t& y) const;
38         virtual Bool_t     GetL1GammaPatch(const Int_t i, Int_t& x, Int_t& y, Int_t& z) const;
39         virtual Bool_t       GetL1JetPatch(const Int_t i, Int_t& x, Int_t& y) const;
40                 
41 private:
42     
43         AliEMCALTriggerSTURawStream(const AliEMCALTriggerSTURawStream& rhs);
44     AliEMCALTriggerSTURawStream& operator = (const AliEMCALTriggerSTURawStream& rhs);
45
46     AliRawReader* fRawReader;   // object for reading the raw data
47
48         UInt_t                               fL1JetThreshold;
49         UInt_t                             fL1GammaThreshold;
50         UShort_t                          fL0GammaPatchIndex[3100]; 
51         UShort_t                          fL1GammaPatchIndex[3100]; 
52         UShort_t                            fL1JetPatchIndex[200];
53         
54         Int_t                                 fNL0GammaPatch;
55         Int_t                                   fNL1JetPatch;
56         Int_t                                 fNL1GammaPatch;
57         
58         Int_t                                     fGetRawData;
59         
60         UInt_t                                          fADC[32][96];
61         
62     ClassDef(AliEMCALTriggerSTURawStream,1)   // class for reading EMCAL STU DDL raw data
63 };
64
65 #endif