9da9152e16012376e9c88772fc5df0fc66730d54
[u/mrichter/AliRoot.git] / JETAN / AliAnalysisTaskJets.cxx
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15  
16 #include <TROOT.h>
17 #include <TSystem.h>
18 #include <TInterpreter.h>
19 #include <TChain.h>
20 #include <TH1.h>
21
22 #include "AliAnalysisTaskJets.h"
23 #include "AliJetFinder.h"
24 #include "AliESD.h"
25
26 ClassImp(AliAnalysisTaskJets)
27
28 ////////////////////////////////////////////////////////////////////////
29
30 AliAnalysisTaskJets::AliAnalysisTaskJets(const char* name):
31     AliAnalysisTask(name, "AnalysisTaskJets"),
32     fJetFinder(0x0),
33     fChain(0x0),
34     fESD(0x0)
35 {
36   // Default constructor
37     DefineInput (0, TChain::Class());
38     DefineOutput(0, TH1::Class());
39 }
40
41 void AliAnalysisTaskJets::Init(Option_t */*option*/)
42 {
43 // Initialisation
44 //
45     printf("AnalysisJets::Init() \n");
46
47     // Call configuration file
48     gROOT->LoadMacro("ConfigJetAnalysis.C");
49     fJetFinder = (AliJetFinder*) gInterpreter->ProcessLine("ConfigJetAnalysis()");
50     // Initialise Jet Analysis
51     fJetFinder->Init();
52     fChain = (TChain*)GetInputData(0);
53     fJetFinder->ConnectTree(fChain);
54     fJetFinder->WriteHeaders();
55 }
56
57 void AliAnalysisTaskJets::Exec(Option_t */*option*/)
58 {
59 // Execute analysis for current event
60 //
61     Long64_t ientry = fChain->GetReadEntry();
62     printf("Analysing event # %5d \n", (Int_t) ientry);
63     
64     fJetFinder->ProcessEvent(ientry);
65 }
66
67 void AliAnalysisTaskJets::Terminate(Option_t */*option*/)
68 {
69 // Terminate analysis
70 //
71     printf("AnalysisJets: Terminate() \n");
72     fJetFinder->FinishRun();
73 }
74