]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGJE/EMCALJetTasks/Tracks/AliEMCalTriggerTaskGroup.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / Tracks / AliEMCalTriggerTaskGroup.h
1 #ifndef ALIEMCALTRIGGERTASKGROUP_H
2 #define ALIEMCALTRIGGERTASKGROUP_H
3 /* Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 // Author: Markus Fasel
7 #include <TNamed.h>
8 #include <TObjArray.h>
9
10 namespace EMCalTriggerPtAnalysis {
11
12 class AliEMCalTriggerAnaTriggerDecision;
13 class AliEMCalTriggerBinningComponent;
14 class AliEMCalTriggerEventSelection;
15 class AliEMCalTriggerKineCuts;
16 class AliEMCalTriggerTracksAnalysisComponent;
17
18 class AliEMCalTriggerTaskGroup : public TNamed {
19 public:
20   AliEMCalTriggerTaskGroup();
21   AliEMCalTriggerTaskGroup(const char *name);
22   virtual ~AliEMCalTriggerTaskGroup();
23
24   void SetEventSelection(const AliEMCalTriggerEventSelection *sel){ fEventSelection = sel; }
25   void SetGlobalBinning(const AliEMCalTriggerBinningComponent *const binning) { fBinning = binning; }
26   void SetTriggerDecision(const AliEMCalTriggerAnaTriggerDecision *trigger);
27   void SetKineCuts(const AliEMCalTriggerKineCuts *cuts) { fKineCuts = cuts; }
28   void AddAnalysisComponent(AliEMCalTriggerTracksAnalysisComponent * const analysis);
29
30   TList * InitialiseAnalysisComponents();
31   void Process(const AliEMCalTriggerEventData * const event);
32
33 protected:
34   TObjArray                                   *fAnalysisComponents;
35   const AliEMCalTriggerEventSelection         *fEventSelection;
36   const AliEMCalTriggerBinningComponent       *fBinning;
37   const AliEMCalTriggerKineCuts               *fKineCuts;
38
39   ClassDef(AliEMCalTriggerTaskGroup, 1);    // Group of analysis components with common event selection
40 };
41
42 } /* namespace EMCalTriggerPtAnalysis */
43
44 #endif /* ALIEMCALTRIGGERTASKGROUP_H */