#include <TTree.h>
#include <TChain.h>
#include <TFile.h>
#include <TH1D.h>
#include "AliLog.h"
#include "AliESDInputHandler.h"
#include "AliESDtrack.h"
#include "AliESDEvent.h"
#include "AliESDfriend.h"
#include "AliAnalysisTask.h"
#include "AliAnalysisManager.h"
#include "AliAnalysisTaskAddObject.h"
ClassImp(AliAnalysisTaskAddObject)
AliAnalysisTaskAddObject::AliAnalysisTaskAddObject():
AliAnalysisTask(),
fESDInput(0x0),
fESDfriendInput(0x0),
fESDhandler(0x0),
fh(0x0)
{
}
AliAnalysisTaskAddObject::AliAnalysisTaskAddObject(const char* name):
AliAnalysisTask(name,"Adding an object"),
fESDInput(0),
fESDfriendInput(0),
fESDhandler(0x0),
fh(0x0)
{
DefineInput(0, TChain::Class());
DefineOutput(0,TH1D::Class());
}
AliAnalysisTaskAddObject::~AliAnalysisTaskAddObject()
{
if (fh){
delete fh;
fh = 0x0;
}
}
void AliAnalysisTaskAddObject::ConnectInputData(Option_t* )
{
printf("AliAnalysisTaskAddObject::ConnectInputData()\n");
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr) AliFatal("No analysis manager available");
fESDhandler = dynamic_cast<AliESDInputHandler *>(mgr->GetInputEventHandler());
if (fESDhandler) {
fESDInput = fESDhandler->GetEvent();
} else {
AliFatal("No ESD input event handler connected") ;
}
}
void AliAnalysisTaskAddObject::CreateOutputObjects()
{
fh = new TH1D("fh1","Integrated Length",100,0,1000);
return;
}
void AliAnalysisTaskAddObject::Exec(Option_t *)
{
Long64_t entry = fESDhandler->GetReadEntry();
AliDebug(2,Form("AliAnalysisTaskAddObject::Exec() %s ==> processing event %lld", fESDhandler->GetTree()->GetCurrentFile()->GetName(),entry));
fESDInput = fESDhandler->GetEvent();
if(!fESDInput) {
printf("AliAnalysisTaskAddObject::Exec(): no ESD \n");
return;
}
for (Int_t i = 0; i< fESDInput->GetNumberOfTracks(); i++){
AliESDtrack* t = fESDInput->GetTrack(i);
Double_t l = t->GetIntegratedLength();
fh->Fill(l);
}
PostData(0,fh);
return;
}
void AliAnalysisTaskAddObject::Terminate(Option_t *)
{
AliDebug(2,"AliAnalysisTaskAddObject: Terminate() \n");
return;
}
AliAnalysisTaskAddObject.cxx:1 AliAnalysisTaskAddObject.cxx:2 AliAnalysisTaskAddObject.cxx:3 AliAnalysisTaskAddObject.cxx:4 AliAnalysisTaskAddObject.cxx:5 AliAnalysisTaskAddObject.cxx:6 AliAnalysisTaskAddObject.cxx:7 AliAnalysisTaskAddObject.cxx:8 AliAnalysisTaskAddObject.cxx:9 AliAnalysisTaskAddObject.cxx:10 AliAnalysisTaskAddObject.cxx:11 AliAnalysisTaskAddObject.cxx:12 AliAnalysisTaskAddObject.cxx:13 AliAnalysisTaskAddObject.cxx:14 AliAnalysisTaskAddObject.cxx:15 AliAnalysisTaskAddObject.cxx:16 AliAnalysisTaskAddObject.cxx:17 AliAnalysisTaskAddObject.cxx:18 AliAnalysisTaskAddObject.cxx:19 AliAnalysisTaskAddObject.cxx:20 AliAnalysisTaskAddObject.cxx:21 AliAnalysisTaskAddObject.cxx:22 AliAnalysisTaskAddObject.cxx:23 AliAnalysisTaskAddObject.cxx:24 AliAnalysisTaskAddObject.cxx:25 AliAnalysisTaskAddObject.cxx:26 AliAnalysisTaskAddObject.cxx:27 AliAnalysisTaskAddObject.cxx:28 AliAnalysisTaskAddObject.cxx:29 AliAnalysisTaskAddObject.cxx:30 AliAnalysisTaskAddObject.cxx:31 AliAnalysisTaskAddObject.cxx:32 AliAnalysisTaskAddObject.cxx:33 AliAnalysisTaskAddObject.cxx:34 AliAnalysisTaskAddObject.cxx:35 AliAnalysisTaskAddObject.cxx:36 AliAnalysisTaskAddObject.cxx:37 AliAnalysisTaskAddObject.cxx:38 AliAnalysisTaskAddObject.cxx:39 AliAnalysisTaskAddObject.cxx:40 AliAnalysisTaskAddObject.cxx:41 AliAnalysisTaskAddObject.cxx:42 AliAnalysisTaskAddObject.cxx:43 AliAnalysisTaskAddObject.cxx:44 AliAnalysisTaskAddObject.cxx:45 AliAnalysisTaskAddObject.cxx:46 AliAnalysisTaskAddObject.cxx:47 AliAnalysisTaskAddObject.cxx:48 AliAnalysisTaskAddObject.cxx:49 AliAnalysisTaskAddObject.cxx:50 AliAnalysisTaskAddObject.cxx:51 AliAnalysisTaskAddObject.cxx:52 AliAnalysisTaskAddObject.cxx:53 AliAnalysisTaskAddObject.cxx:54 AliAnalysisTaskAddObject.cxx:55 AliAnalysisTaskAddObject.cxx:56 AliAnalysisTaskAddObject.cxx:57 AliAnalysisTaskAddObject.cxx:58 AliAnalysisTaskAddObject.cxx:59 AliAnalysisTaskAddObject.cxx:60 AliAnalysisTaskAddObject.cxx:61 AliAnalysisTaskAddObject.cxx:62 AliAnalysisTaskAddObject.cxx:63 AliAnalysisTaskAddObject.cxx:64 AliAnalysisTaskAddObject.cxx:65 AliAnalysisTaskAddObject.cxx:66 AliAnalysisTaskAddObject.cxx:67 AliAnalysisTaskAddObject.cxx:68 AliAnalysisTaskAddObject.cxx:69 AliAnalysisTaskAddObject.cxx:70 AliAnalysisTaskAddObject.cxx:71 AliAnalysisTaskAddObject.cxx:72 AliAnalysisTaskAddObject.cxx:73 AliAnalysisTaskAddObject.cxx:74 AliAnalysisTaskAddObject.cxx:75 AliAnalysisTaskAddObject.cxx:76 AliAnalysisTaskAddObject.cxx:77 AliAnalysisTaskAddObject.cxx:78 AliAnalysisTaskAddObject.cxx:79 AliAnalysisTaskAddObject.cxx:80 AliAnalysisTaskAddObject.cxx:81 AliAnalysisTaskAddObject.cxx:82 AliAnalysisTaskAddObject.cxx:83 AliAnalysisTaskAddObject.cxx:84 AliAnalysisTaskAddObject.cxx:85 AliAnalysisTaskAddObject.cxx:86 AliAnalysisTaskAddObject.cxx:87 AliAnalysisTaskAddObject.cxx:88 AliAnalysisTaskAddObject.cxx:89 AliAnalysisTaskAddObject.cxx:90 AliAnalysisTaskAddObject.cxx:91 AliAnalysisTaskAddObject.cxx:92 AliAnalysisTaskAddObject.cxx:93 AliAnalysisTaskAddObject.cxx:94 AliAnalysisTaskAddObject.cxx:95 AliAnalysisTaskAddObject.cxx:96 AliAnalysisTaskAddObject.cxx:97 AliAnalysisTaskAddObject.cxx:98 AliAnalysisTaskAddObject.cxx:99 AliAnalysisTaskAddObject.cxx:100 AliAnalysisTaskAddObject.cxx:101 AliAnalysisTaskAddObject.cxx:102 AliAnalysisTaskAddObject.cxx:103 AliAnalysisTaskAddObject.cxx:104 AliAnalysisTaskAddObject.cxx:105 AliAnalysisTaskAddObject.cxx:106 AliAnalysisTaskAddObject.cxx:107 AliAnalysisTaskAddObject.cxx:108 AliAnalysisTaskAddObject.cxx:109 AliAnalysisTaskAddObject.cxx:110 AliAnalysisTaskAddObject.cxx:111 AliAnalysisTaskAddObject.cxx:112 AliAnalysisTaskAddObject.cxx:113 AliAnalysisTaskAddObject.cxx:114 AliAnalysisTaskAddObject.cxx:115 AliAnalysisTaskAddObject.cxx:116 AliAnalysisTaskAddObject.cxx:117 AliAnalysisTaskAddObject.cxx:118 AliAnalysisTaskAddObject.cxx:119 AliAnalysisTaskAddObject.cxx:120 AliAnalysisTaskAddObject.cxx:121 AliAnalysisTaskAddObject.cxx:122 AliAnalysisTaskAddObject.cxx:123 AliAnalysisTaskAddObject.cxx:124 AliAnalysisTaskAddObject.cxx:125 AliAnalysisTaskAddObject.cxx:126 AliAnalysisTaskAddObject.cxx:127 AliAnalysisTaskAddObject.cxx:128 AliAnalysisTaskAddObject.cxx:129 AliAnalysisTaskAddObject.cxx:130 AliAnalysisTaskAddObject.cxx:131 AliAnalysisTaskAddObject.cxx:132 AliAnalysisTaskAddObject.cxx:133 AliAnalysisTaskAddObject.cxx:134 AliAnalysisTaskAddObject.cxx:135 AliAnalysisTaskAddObject.cxx:136 AliAnalysisTaskAddObject.cxx:137 AliAnalysisTaskAddObject.cxx:138 AliAnalysisTaskAddObject.cxx:139 AliAnalysisTaskAddObject.cxx:140 AliAnalysisTaskAddObject.cxx:141 AliAnalysisTaskAddObject.cxx:142 AliAnalysisTaskAddObject.cxx:143