]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ZDC/AliZDCTriggerProcessor.h
Added first go at a QA task
[u/mrichter/AliRoot.git] / ZDC / AliZDCTriggerProcessor.h
1 #ifndef ALI_ZDC_TRIGGERPROCESSOR_H
2 #define ALI_ZDC_TRIGGERPREPROCESSOR_H
3
4 //////////////////////////////////////////////////////////////////////
5 //                                                                  //
6 //                      ZDC trigger processor                       //
7 //      It collects data stored by the dedicated DA and writes      //
8 //      an AliZDCTriggerParameters object into the OCDB             //
9 //                                                                  //
10 //        Author: Chiara.Oppedisano@to.infn.it                      //
11 //////////////////////////////////////////////////////////////////////
12 #include <TObject.h>
13
14 class AliZDCTriggerParameters;
15
16 class AliZDCTriggerProcessor : public TObject 
17 {
18   public:
19     AliZDCTriggerProcessor();
20     AliZDCTriggerProcessor(Float_t* signal);
21     AliZDCTriggerProcessor(Float_t* signal, AliZDCTriggerParameters* ocdbParam);
22     AliZDCTriggerProcessor(const AliZDCTriggerProcessor& trigg);  
23     AliZDCTriggerProcessor& operator= (const AliZDCTriggerProcessor &trig);
24     virtual ~AliZDCTriggerProcessor();
25     
26     AliZDCTriggerParameters *GetTriggerParamFromOCDB() const;
27     virtual void SetTriggerParam(AliZDCTriggerParameters* ocdbParam) 
28         {fTriggerParam = ocdbParam;}
29     
30     Float_t* GetSignal() const {return fSignal;}
31     Float_t  GetSignal(Int_t idet) const {return fSignal[idet];}
32     void  SetSignal(Float_t* signal) 
33             {for(Int_t i=0; i<6; i++) fSignal[i] = signal[i];}
34     void  SetSignal(Int_t idet, Float_t signal) {fSignal[idet] = signal;}
35
36   protected:
37     virtual UInt_t ProcessEvent();
38     virtual Bool_t MBTrigger();
39     virtual Bool_t CentralTrigger();
40     virtual Bool_t SemicentralTrigger();
41     virtual Bool_t EMDTrigger();
42
43   private:
44     Float_t* fSignal;
45     AliZDCTriggerParameters *fTriggerParam; // parameters in OCDB
46
47     ClassDef(AliZDCTriggerProcessor, 1);
48 };
49
50     
51
52 #endif