ROOT logo
/* $Id: AliTriggerTask.h 35782 2009-10-22 11:54:31Z jgrosseo $ */

#ifndef ALITRIGGERTASK_H
#define ALITRIGGERTASK_H

#include "AliAnalysisTask.h"
#include "AliPWG0Helper.h"
#include "TParameter.h"

class TH1;
class AliESDEvent;
class AliPhysicsSelection;

class AliTriggerTask : public AliAnalysisTask {
  public:
    AliTriggerTask(const char* opt = "");
    virtual ~AliTriggerTask();

    virtual void   ConnectInputData(Option_t *);
    virtual void   CreateOutputObjects();
    virtual void   Exec(Option_t*);
    virtual void   Terminate(Option_t*);

    void SetOption(const char* opt) { fOption = opt; }
    void SetTimes(UInt_t start, UInt_t end) { fStartTime = start; fEndTime = end; }
    void SetUseOrbits(Bool_t flag) { fUseOrbits = flag; }
    void SetPhysicsSelection(AliPhysicsSelection* selection) { fPhysicsSelection = selection; }

 protected:
    AliESDEvent *fESD;    //! ESD object
    TList* fOutput;                  //! list send on output slot 0

    TString fOption;      // option string  
    UInt_t fStartTime;    // run start time
    UInt_t fEndTime;      // run end time
    Bool_t fUseOrbits;    // use orbits instead of time stamps on the axes
    
    TParameter<Long_t>* fFirstOrbit; // first orbit occuring
    TParameter<Long_t>* fLastOrbit; // first orbit occuring

    Int_t fNTriggers;                           //! number triggers
    AliTriggerAnalysis::Trigger* fTriggerList;  //! list of triggers
    Int_t fNTriggerClasses;                     //! number of trigger classes
    const char** fTriggerClassesList;           //! list of trigger classes
    TH1*** fStats;                              //! trigger stats
    
    AliPhysicsSelection* fPhysicsSelection; // trigger object

 private:
    AliTriggerTask(const AliTriggerTask&);
    AliTriggerTask& operator=(const AliTriggerTask&);

  ClassDef(AliTriggerTask, 1);
};

#endif
 AliTriggerTask.h:1
 AliTriggerTask.h:2
 AliTriggerTask.h:3
 AliTriggerTask.h:4
 AliTriggerTask.h:5
 AliTriggerTask.h:6
 AliTriggerTask.h:7
 AliTriggerTask.h:8
 AliTriggerTask.h:9
 AliTriggerTask.h:10
 AliTriggerTask.h:11
 AliTriggerTask.h:12
 AliTriggerTask.h:13
 AliTriggerTask.h:14
 AliTriggerTask.h:15
 AliTriggerTask.h:16
 AliTriggerTask.h:17
 AliTriggerTask.h:18
 AliTriggerTask.h:19
 AliTriggerTask.h:20
 AliTriggerTask.h:21
 AliTriggerTask.h:22
 AliTriggerTask.h:23
 AliTriggerTask.h:24
 AliTriggerTask.h:25
 AliTriggerTask.h:26
 AliTriggerTask.h:27
 AliTriggerTask.h:28
 AliTriggerTask.h:29
 AliTriggerTask.h:30
 AliTriggerTask.h:31
 AliTriggerTask.h:32
 AliTriggerTask.h:33
 AliTriggerTask.h:34
 AliTriggerTask.h:35
 AliTriggerTask.h:36
 AliTriggerTask.h:37
 AliTriggerTask.h:38
 AliTriggerTask.h:39
 AliTriggerTask.h:40
 AliTriggerTask.h:41
 AliTriggerTask.h:42
 AliTriggerTask.h:43
 AliTriggerTask.h:44
 AliTriggerTask.h:45
 AliTriggerTask.h:46
 AliTriggerTask.h:47
 AliTriggerTask.h:48
 AliTriggerTask.h:49
 AliTriggerTask.h:50
 AliTriggerTask.h:51
 AliTriggerTask.h:52
 AliTriggerTask.h:53
 AliTriggerTask.h:54
 AliTriggerTask.h:55
 AliTriggerTask.h:56