]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGUD/selectors/trigger/AliTriggerTask.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGUD / selectors / trigger / AliTriggerTask.h
1 /* $Id: AliTriggerTask.h 35782 2009-10-22 11:54:31Z jgrosseo $ */
2
3 #ifndef ALITRIGGERTASK_H
4 #define ALITRIGGERTASK_H
5
6 #include "AliAnalysisTask.h"
7 #include "AliPWG0Helper.h"
8 #include "TParameter.h"
9
10 class TH1;
11 class AliESDEvent;
12 class AliPhysicsSelection;
13
14 class AliTriggerTask : public AliAnalysisTask {
15   public:
16     AliTriggerTask(const char* opt = "");
17     virtual ~AliTriggerTask();
18
19     virtual void   ConnectInputData(Option_t *);
20     virtual void   CreateOutputObjects();
21     virtual void   Exec(Option_t*);
22     virtual void   Terminate(Option_t*);
23
24     void SetOption(const char* opt) { fOption = opt; }
25     void SetTimes(UInt_t start, UInt_t end) { fStartTime = start; fEndTime = end; }
26     void SetUseOrbits(Bool_t flag) { fUseOrbits = flag; }
27     void SetPhysicsSelection(AliPhysicsSelection* selection) { fPhysicsSelection = selection; }
28
29  protected:
30     AliESDEvent *fESD;    //! ESD object
31     TList* fOutput;                  //! list send on output slot 0
32
33     TString fOption;      // option string  
34     UInt_t fStartTime;    // run start time
35     UInt_t fEndTime;      // run end time
36     Bool_t fUseOrbits;    // use orbits instead of time stamps on the axes
37     
38     TParameter<Long_t>* fFirstOrbit; // first orbit occuring
39     TParameter<Long_t>* fLastOrbit; // first orbit occuring
40
41     Int_t fNTriggers;                           //! number triggers
42     AliTriggerAnalysis::Trigger* fTriggerList;  //! list of triggers
43     Int_t fNTriggerClasses;                     //! number of trigger classes
44     const char** fTriggerClassesList;           //! list of trigger classes
45     TH1*** fStats;                              //! trigger stats
46     
47     AliPhysicsSelection* fPhysicsSelection; // trigger object
48
49  private:
50     AliTriggerTask(const AliTriggerTask&);
51     AliTriggerTask& operator=(const AliTriggerTask&);
52
53   ClassDef(AliTriggerTask, 1);
54 };
55
56 #endif