#include "AliUnicorAnalGlobal.h"
#include "AliUnicorAnalSingle.h"
#include "AliUnicorAnalCorrel.h"
#include "AliUnicorAnalPtfluc.h"
#include "AliUnicorAnalHighpt.h"
#include "AliUnicorEventAliceESD.h"
#include "AliESDEvent.h"
#include "AliAnalysisTaskUnicor.h"
ClassImp(AliAnalysisTaskUnicor)
AliAnalysisTaskUnicor::AliAnalysisTaskUnicor(const char *name) :
AliAnalysisTaskSE(name),
fEv0(0),
fOutputList(0)
{
fEv0 = new AliUnicorEventAliceESD();
DefineOutput(1, TList::Class());
}
void AliAnalysisTaskUnicor::UserCreateOutputObjects()
{
fOutputList = new TList();
fOutputList->SetOwner();
fOutputList->Add(new AliUnicorAnalGlobal("dag"));
fOutputList->Add(new AliUnicorAnalSingle("all",fEv0->Etamin(),fEv0->Etamax(),0));
fOutputList->Add(new AliUnicorAnalSingle("pim",fEv0->Etamin(),fEv0->Etamax(),-211));
fOutputList->Add(new AliUnicorAnalSingle("pip",fEv0->Etamin(),fEv0->Etamax(), 211));
AliUnicorAnalCorrel::AnalysisFrame frame = AliUnicorAnalCorrel::kLCMS;
fOutputList->Add(new AliUnicorAnalCorrel("cnn",fEv0->Etamin(),fEv0->Etamax(),-211,-211, frame));
fOutputList->Add(new AliUnicorAnalCorrel("cpp",fEv0->Etamin(),fEv0->Etamax(), 211, 211, frame));
fOutputList->Add(new AliUnicorAnalCorrel("cnp",fEv0->Etamin(),fEv0->Etamax(),-211, 211, frame));
fOutputList->Add(new AliUnicorAnalPtfluc("ptf",0,0));
fOutputList->Add(new AliUnicorAnalHighpt("hpt",fEv0->Etamin(),fEv0->Etamax(),0,0));
}
void AliAnalysisTaskUnicor::UserExec(Option_t *)
{
fEv0->SetESD(((AliESDEvent*) InputEvent()));
if (!fEv0->Good()) return;
((AliUnicorAnalGlobal *) fOutputList->At(0))->Process(fEv0);
((AliUnicorAnalSingle *) fOutputList->At(1))->Process(fEv0);
((AliUnicorAnalSingle *) fOutputList->At(2))->Process(fEv0);
((AliUnicorAnalSingle *) fOutputList->At(3))->Process(fEv0);
((AliUnicorAnalCorrel *) fOutputList->At(4))->Process(0,fEv0,fEv0,0);
((AliUnicorAnalCorrel *) fOutputList->At(4))->Process(2,fEv0,fEv0,TMath::DegToRad()*180);
((AliUnicorAnalCorrel *) fOutputList->At(5))->Process(0,fEv0,fEv0,0);
((AliUnicorAnalCorrel *) fOutputList->At(5))->Process(2,fEv0,fEv0,TMath::DegToRad()*180);
((AliUnicorAnalCorrel *) fOutputList->At(6))->Process(0,fEv0,fEv0,0);
((AliUnicorAnalCorrel *) fOutputList->At(6))->Process(2,fEv0,fEv0,TMath::DegToRad()*180);
((AliUnicorAnalPtfluc *) fOutputList->At(7))->Process(0,fEv0,fEv0);
((AliUnicorAnalHighpt *) fOutputList->At(8))->Process(fEv0,fEv0);
PostData(1, fOutputList);
}
void AliAnalysisTaskUnicor::Terminate(Option_t *)
{
printf("terminate \n");
TList *outputlist = (TList*) GetOutputData(1);
int n = outputlist->GetEntries();
if (n) ((AliUnicorAnal *) outputlist->At(0))->Save("unicor-result.root","recreate");
for (int i=1; i<n; i++) ((AliUnicorAnal *) outputlist->At(i))->Save("unicor-result.root");
}
AliAnalysisTaskUnicor.cxx:1 AliAnalysisTaskUnicor.cxx:2 AliAnalysisTaskUnicor.cxx:3 AliAnalysisTaskUnicor.cxx:4 AliAnalysisTaskUnicor.cxx:5 AliAnalysisTaskUnicor.cxx:6 AliAnalysisTaskUnicor.cxx:7 AliAnalysisTaskUnicor.cxx:8 AliAnalysisTaskUnicor.cxx:9 AliAnalysisTaskUnicor.cxx:10 AliAnalysisTaskUnicor.cxx:11 AliAnalysisTaskUnicor.cxx:12 AliAnalysisTaskUnicor.cxx:13 AliAnalysisTaskUnicor.cxx:14 AliAnalysisTaskUnicor.cxx:15 AliAnalysisTaskUnicor.cxx:16 AliAnalysisTaskUnicor.cxx:17 AliAnalysisTaskUnicor.cxx:18 AliAnalysisTaskUnicor.cxx:19 AliAnalysisTaskUnicor.cxx:20 AliAnalysisTaskUnicor.cxx:21 AliAnalysisTaskUnicor.cxx:22 AliAnalysisTaskUnicor.cxx:23 AliAnalysisTaskUnicor.cxx:24 AliAnalysisTaskUnicor.cxx:25 AliAnalysisTaskUnicor.cxx:26 AliAnalysisTaskUnicor.cxx:27 AliAnalysisTaskUnicor.cxx:28 AliAnalysisTaskUnicor.cxx:29 AliAnalysisTaskUnicor.cxx:30 AliAnalysisTaskUnicor.cxx:31 AliAnalysisTaskUnicor.cxx:32 AliAnalysisTaskUnicor.cxx:33 AliAnalysisTaskUnicor.cxx:34 AliAnalysisTaskUnicor.cxx:35 AliAnalysisTaskUnicor.cxx:36 AliAnalysisTaskUnicor.cxx:37 AliAnalysisTaskUnicor.cxx:38 AliAnalysisTaskUnicor.cxx:39 AliAnalysisTaskUnicor.cxx:40 AliAnalysisTaskUnicor.cxx:41 AliAnalysisTaskUnicor.cxx:42 AliAnalysisTaskUnicor.cxx:43 AliAnalysisTaskUnicor.cxx:44 AliAnalysisTaskUnicor.cxx:45 AliAnalysisTaskUnicor.cxx:46 AliAnalysisTaskUnicor.cxx:47 AliAnalysisTaskUnicor.cxx:48 AliAnalysisTaskUnicor.cxx:49 AliAnalysisTaskUnicor.cxx:50 AliAnalysisTaskUnicor.cxx:51 AliAnalysisTaskUnicor.cxx:52 AliAnalysisTaskUnicor.cxx:53 AliAnalysisTaskUnicor.cxx:54 AliAnalysisTaskUnicor.cxx:55 AliAnalysisTaskUnicor.cxx:56 AliAnalysisTaskUnicor.cxx:57 AliAnalysisTaskUnicor.cxx:58 AliAnalysisTaskUnicor.cxx:59 AliAnalysisTaskUnicor.cxx:60 AliAnalysisTaskUnicor.cxx:61 AliAnalysisTaskUnicor.cxx:62 AliAnalysisTaskUnicor.cxx:63 AliAnalysisTaskUnicor.cxx:64 AliAnalysisTaskUnicor.cxx:65 AliAnalysisTaskUnicor.cxx:66 AliAnalysisTaskUnicor.cxx:67 AliAnalysisTaskUnicor.cxx:68 AliAnalysisTaskUnicor.cxx:69 AliAnalysisTaskUnicor.cxx:70 AliAnalysisTaskUnicor.cxx:71 AliAnalysisTaskUnicor.cxx:72 AliAnalysisTaskUnicor.cxx:73 AliAnalysisTaskUnicor.cxx:74 AliAnalysisTaskUnicor.cxx:75 AliAnalysisTaskUnicor.cxx:76 AliAnalysisTaskUnicor.cxx:77 AliAnalysisTaskUnicor.cxx:78 AliAnalysisTaskUnicor.cxx:79 AliAnalysisTaskUnicor.cxx:80 AliAnalysisTaskUnicor.cxx:81 AliAnalysisTaskUnicor.cxx:82 AliAnalysisTaskUnicor.cxx:83 AliAnalysisTaskUnicor.cxx:84 AliAnalysisTaskUnicor.cxx:85 AliAnalysisTaskUnicor.cxx:86 AliAnalysisTaskUnicor.cxx:87 AliAnalysisTaskUnicor.cxx:88 AliAnalysisTaskUnicor.cxx:89 AliAnalysisTaskUnicor.cxx:90 AliAnalysisTaskUnicor.cxx:91 AliAnalysisTaskUnicor.cxx:92 AliAnalysisTaskUnicor.cxx:93