]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG0/AliOfflineTrigger.h
adding class to trigger offline on content of the ESD
[u/mrichter/AliRoot.git] / PWG0 / AliOfflineTrigger.h
1 /* $Id: AliOfflineTrigger.h 35782 2009-10-22 11:54:31Z jgrosseo $ */
2
3 #ifndef ALIOFFLINETRIGGER_H
4 #define ALIOFFLINETRIGGER_H
5
6 #include <TObject.h>
7 #include <AliPWG0Helper.h>
8
9 class AliESDEvent;
10
11 class AliOfflineTrigger : public TObject
12 {
13   public:
14     enum AliceSide { kASide = 1, kCSide };
15     
16     AliOfflineTrigger();
17     virtual ~AliOfflineTrigger() {}
18
19     Bool_t IsEventTriggered(const AliESDEvent* aEsd, AliPWG0Helper::Trigger trigger) const;
20     
21     void SetSPDGFOThreshhold(Int_t t) { fSPDGFOThreshold = t; }
22     void SetV0Threshhold(Int_t aSide, Int_t cSide) { fV0AThreshold = aSide; fV0CThreshold = cSide; }
23     
24     Int_t GetSPDGFOThreshhold() const { return fSPDGFOThreshold; }
25     Int_t GetV0AThreshold() const { return fV0AThreshold; }
26     Int_t GetV0CThreshold() const { return fV0CThreshold; }
27
28   protected:
29     Bool_t SPDGFOTrigger(const AliESDEvent* aEsd) const;
30     Bool_t V0Trigger(const AliESDEvent* aEsd, AliceSide side) const;
31     Bool_t ZDCTrigger(const AliESDEvent* aEsd, AliceSide side) const;
32     Bool_t FMDTrigger(const AliESDEvent* aEsd) const;
33
34     Int_t fSPDGFOThreshold;         // number of chips to accept a SPD GF0 trigger
35     Int_t fV0AThreshold;            // threshold for number of BB triggers in V0A
36     Int_t fV0CThreshold;            // threshold for number of BB triggers in V0C
37  
38     ClassDef(AliOfflineTrigger, 0)
39     
40   private:
41     AliOfflineTrigger(const AliOfflineTrigger&);
42     AliOfflineTrigger& operator=(const AliOfflineTrigger&);
43 };
44
45 #endif