]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/AliEmcalJetUtility.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / AliEmcalJetUtility.h
CommitLineData
85c423bc 1#ifndef ALIEMCALJETUTILITY_H
2#define ALIEMCALJETUTILITY_H
3
4#include <TNamed.h>
5
6#include "AliFJWrapper.h"
7
8class AliEmcalJetTask;
9class AliEmcalJet;
10class AliFJWrapper;
11
12class AliEmcalJetUtility : public TNamed
13{
14 public:
15
16 AliEmcalJetUtility();
17 AliEmcalJetUtility(const char* name);
18 AliEmcalJetUtility(const AliEmcalJetUtility &jet);
19 AliEmcalJetUtility& operator=(const AliEmcalJetUtility &jet);
20 ~AliEmcalJetUtility() {;}
21
22 virtual void Init() = 0; // Executed only once at the end of AliEmcalJetTask::DoInit()
23 virtual void Prepare(AliFJWrapper& fjw) = 0; // Executed for each event at the beginning of AliEmcalJetTask::FillJetBranch()
24 virtual void ProcessJet(AliEmcalJet* jet, Int_t ij, AliFJWrapper& fjw) = 0; // Executed for each jet in the loop in AliEmcalJetTask::FillJetBranch()
25 virtual void Terminate(AliFJWrapper& fjw) = 0; // Executed for each event at the end of AliEmcalJetTask::FillJetBranch()
26
27 void SetJetTask(AliEmcalJetTask* jetTask) { fJetTask = jetTask; }
28
29 protected:
30
31 AliEmcalJetTask *fJetTask ; // pointer to the main jet task
32 Bool_t fInit ; //! whether or not the utility has been initialized
33
34 ClassDef(AliEmcalJetUtility, 1) // Abstract Emcal jet utility class
35};
36#endif