class TFile;
class TString;
class TList;
class AliAnalysisTaskSE;
#include "Riostream.h"
#include "AliFlowEventSimple.h"
#include "AliAnalysisTaskNestedLoops.h"
#include "AliFlowAnalysisWithNestedLoops.h"
using std::cout;
using std::endl;
ClassImp(AliAnalysisTaskNestedLoops)
AliAnalysisTaskNestedLoops::AliAnalysisTaskNestedLoops(const char *name, Bool_t useParticleWeights):
AliAnalysisTaskSE(name),
fEvent(NULL),
fNL(NULL),
fListHistos(NULL),
fHarmonic(0),
fOppositeChargesPOI(kFALSE),
fEvaluateDifferential3pCorrelator(kFALSE),
fUseParticleWeights(useParticleWeights),
fUsePhiWeights(kFALSE),
fUsePtWeights(kFALSE),
fUseEtaWeights(kFALSE),
fWeightsList(NULL),
fEvaluateNestedLoopsForRAD(kTRUE),
fEvaluateNestedLoopsForQC(kFALSE),
fEvaluateNestedLoopsForMH(kFALSE)
{
cout<<"AliAnalysisTaskNestedLoops::AliAnalysisTaskNestedLoops(const char *name, Bool_t useParticleWeights)"<<endl;
DefineInput(0, AliFlowEventSimple::Class());
if(useParticleWeights)
{
DefineInput(1, TList::Class());
}
DefineOutput(1, TList::Class());
}
AliAnalysisTaskNestedLoops::AliAnalysisTaskNestedLoops():
AliAnalysisTaskSE(),
fEvent(NULL),
fNL(NULL),
fListHistos(NULL),
fHarmonic(0),
fOppositeChargesPOI(kFALSE),
fEvaluateDifferential3pCorrelator(kFALSE),
fUseParticleWeights(kFALSE),
fUsePhiWeights(kFALSE),
fUsePtWeights(kFALSE),
fUseEtaWeights(kFALSE),
fWeightsList(NULL),
fEvaluateNestedLoopsForRAD(kFALSE),
fEvaluateNestedLoopsForQC(kFALSE),
fEvaluateNestedLoopsForMH(kFALSE)
{
cout<<"AliAnalysisTaskNestedLoops::AliAnalysisTaskNestedLoops()"<<endl;
}
void AliAnalysisTaskNestedLoops::UserCreateOutputObjects()
{
cout<<"AliAnalysisTaskNestedLoops::UserCreateOutputObjects()"<<endl;
fNL = new AliFlowAnalysisWithNestedLoops();
fNL->SetHarmonic(fHarmonic);
fNL->SetOppositeChargesPOI(fOppositeChargesPOI);
fNL->SetEvaluateDifferential3pCorrelator(fEvaluateDifferential3pCorrelator);
if(fUseParticleWeights)
{
if(fUsePhiWeights) fNL->SetUsePhiWeights(fUsePhiWeights);
if(fUsePtWeights) fNL->SetUsePtWeights(fUsePtWeights);
if(fUseEtaWeights) fNL->SetUseEtaWeights(fUseEtaWeights);
if(GetNinputs()==2)
{
fWeightsList = (TList*)GetInputData(1);
}
if(fWeightsList) fNL->SetWeightsList(fWeightsList);
}
fNL->SetEvaluateNestedLoopsForRAD(fEvaluateNestedLoopsForRAD);
fNL->SetEvaluateNestedLoopsForQC(fEvaluateNestedLoopsForQC);
fNL->SetEvaluateNestedLoopsForMH(fEvaluateNestedLoopsForMH);
fNL->Init();
if(fNL->GetHistList())
{
fListHistos = fNL->GetHistList();
} else
{
Printf("ERROR: Could not retrieve histogram list (NL, Task::UserCreateOutputObjects()) !!!!");
}
PostData(1,fListHistos);
}
void AliAnalysisTaskNestedLoops::UserExec(Option_t *)
{
fEvent = dynamic_cast<AliFlowEventSimple*>(GetInputData(0));
if(fEvent)
{
fNL->Make(fEvent);
} else
{
cout<<"WARNING: No input data (NL, Task::UserExec()) !!!!"<<endl;
cout<<endl;
}
PostData(1,fListHistos);
}
void AliAnalysisTaskNestedLoops::Terminate(Option_t *)
{
fListHistos = (TList*)GetOutputData(1);
fNL = new AliFlowAnalysisWithNestedLoops();
if(fListHistos)
{
fNL->GetOutputHistograms(fListHistos);
fNL->Finish();
PostData(1,fListHistos);
} else
{
cout<<" WARNING: histogram list pointer is empty (NL, Task::Terminate()) !!!!"<<endl;
cout<<endl;
}
}
AliAnalysisTaskNestedLoops.cxx:1 AliAnalysisTaskNestedLoops.cxx:2 AliAnalysisTaskNestedLoops.cxx:3 AliAnalysisTaskNestedLoops.cxx:4 AliAnalysisTaskNestedLoops.cxx:5 AliAnalysisTaskNestedLoops.cxx:6 AliAnalysisTaskNestedLoops.cxx:7 AliAnalysisTaskNestedLoops.cxx:8 AliAnalysisTaskNestedLoops.cxx:9 AliAnalysisTaskNestedLoops.cxx:10 AliAnalysisTaskNestedLoops.cxx:11 AliAnalysisTaskNestedLoops.cxx:12 AliAnalysisTaskNestedLoops.cxx:13 AliAnalysisTaskNestedLoops.cxx:14 AliAnalysisTaskNestedLoops.cxx:15 AliAnalysisTaskNestedLoops.cxx:16 AliAnalysisTaskNestedLoops.cxx:17 AliAnalysisTaskNestedLoops.cxx:18 AliAnalysisTaskNestedLoops.cxx:19 AliAnalysisTaskNestedLoops.cxx:20 AliAnalysisTaskNestedLoops.cxx:21 AliAnalysisTaskNestedLoops.cxx:22 AliAnalysisTaskNestedLoops.cxx:23 AliAnalysisTaskNestedLoops.cxx:24 AliAnalysisTaskNestedLoops.cxx:25 AliAnalysisTaskNestedLoops.cxx:26 AliAnalysisTaskNestedLoops.cxx:27 AliAnalysisTaskNestedLoops.cxx:28 AliAnalysisTaskNestedLoops.cxx:29 AliAnalysisTaskNestedLoops.cxx:30 AliAnalysisTaskNestedLoops.cxx:31 AliAnalysisTaskNestedLoops.cxx:32 AliAnalysisTaskNestedLoops.cxx:33 AliAnalysisTaskNestedLoops.cxx:34 AliAnalysisTaskNestedLoops.cxx:35 AliAnalysisTaskNestedLoops.cxx:36 AliAnalysisTaskNestedLoops.cxx:37 AliAnalysisTaskNestedLoops.cxx:38 AliAnalysisTaskNestedLoops.cxx:39 AliAnalysisTaskNestedLoops.cxx:40 AliAnalysisTaskNestedLoops.cxx:41 AliAnalysisTaskNestedLoops.cxx:42 AliAnalysisTaskNestedLoops.cxx:43 AliAnalysisTaskNestedLoops.cxx:44 AliAnalysisTaskNestedLoops.cxx:45 AliAnalysisTaskNestedLoops.cxx:46 AliAnalysisTaskNestedLoops.cxx:47 AliAnalysisTaskNestedLoops.cxx:48 AliAnalysisTaskNestedLoops.cxx:49 AliAnalysisTaskNestedLoops.cxx:50 AliAnalysisTaskNestedLoops.cxx:51 AliAnalysisTaskNestedLoops.cxx:52 AliAnalysisTaskNestedLoops.cxx:53 AliAnalysisTaskNestedLoops.cxx:54 AliAnalysisTaskNestedLoops.cxx:55 AliAnalysisTaskNestedLoops.cxx:56 AliAnalysisTaskNestedLoops.cxx:57 AliAnalysisTaskNestedLoops.cxx:58 AliAnalysisTaskNestedLoops.cxx:59 AliAnalysisTaskNestedLoops.cxx:60 AliAnalysisTaskNestedLoops.cxx:61 AliAnalysisTaskNestedLoops.cxx:62 AliAnalysisTaskNestedLoops.cxx:63 AliAnalysisTaskNestedLoops.cxx:64 AliAnalysisTaskNestedLoops.cxx:65 AliAnalysisTaskNestedLoops.cxx:66 AliAnalysisTaskNestedLoops.cxx:67 AliAnalysisTaskNestedLoops.cxx:68 AliAnalysisTaskNestedLoops.cxx:69 AliAnalysisTaskNestedLoops.cxx:70 AliAnalysisTaskNestedLoops.cxx:71 AliAnalysisTaskNestedLoops.cxx:72 AliAnalysisTaskNestedLoops.cxx:73 AliAnalysisTaskNestedLoops.cxx:74 AliAnalysisTaskNestedLoops.cxx:75 AliAnalysisTaskNestedLoops.cxx:76 AliAnalysisTaskNestedLoops.cxx:77 AliAnalysisTaskNestedLoops.cxx:78 AliAnalysisTaskNestedLoops.cxx:79 AliAnalysisTaskNestedLoops.cxx:80 AliAnalysisTaskNestedLoops.cxx:81 AliAnalysisTaskNestedLoops.cxx:82 AliAnalysisTaskNestedLoops.cxx:83 AliAnalysisTaskNestedLoops.cxx:84 AliAnalysisTaskNestedLoops.cxx:85 AliAnalysisTaskNestedLoops.cxx:86 AliAnalysisTaskNestedLoops.cxx:87 AliAnalysisTaskNestedLoops.cxx:88 AliAnalysisTaskNestedLoops.cxx:89 AliAnalysisTaskNestedLoops.cxx:90 AliAnalysisTaskNestedLoops.cxx:91 AliAnalysisTaskNestedLoops.cxx:92 AliAnalysisTaskNestedLoops.cxx:93 AliAnalysisTaskNestedLoops.cxx:94 AliAnalysisTaskNestedLoops.cxx:95 AliAnalysisTaskNestedLoops.cxx:96 AliAnalysisTaskNestedLoops.cxx:97 AliAnalysisTaskNestedLoops.cxx:98 AliAnalysisTaskNestedLoops.cxx:99 AliAnalysisTaskNestedLoops.cxx:100 AliAnalysisTaskNestedLoops.cxx:101 AliAnalysisTaskNestedLoops.cxx:102 AliAnalysisTaskNestedLoops.cxx:103 AliAnalysisTaskNestedLoops.cxx:104 AliAnalysisTaskNestedLoops.cxx:105 AliAnalysisTaskNestedLoops.cxx:106 AliAnalysisTaskNestedLoops.cxx:107 AliAnalysisTaskNestedLoops.cxx:108 AliAnalysisTaskNestedLoops.cxx:109 AliAnalysisTaskNestedLoops.cxx:110 AliAnalysisTaskNestedLoops.cxx:111 AliAnalysisTaskNestedLoops.cxx:112 AliAnalysisTaskNestedLoops.cxx:113 AliAnalysisTaskNestedLoops.cxx:114 AliAnalysisTaskNestedLoops.cxx:115 AliAnalysisTaskNestedLoops.cxx:116 AliAnalysisTaskNestedLoops.cxx:117 AliAnalysisTaskNestedLoops.cxx:118 AliAnalysisTaskNestedLoops.cxx:119 AliAnalysisTaskNestedLoops.cxx:120 AliAnalysisTaskNestedLoops.cxx:121 AliAnalysisTaskNestedLoops.cxx:122 AliAnalysisTaskNestedLoops.cxx:123 AliAnalysisTaskNestedLoops.cxx:124 AliAnalysisTaskNestedLoops.cxx:125 AliAnalysisTaskNestedLoops.cxx:126 AliAnalysisTaskNestedLoops.cxx:127 AliAnalysisTaskNestedLoops.cxx:128 AliAnalysisTaskNestedLoops.cxx:129 AliAnalysisTaskNestedLoops.cxx:130 AliAnalysisTaskNestedLoops.cxx:131 AliAnalysisTaskNestedLoops.cxx:132 AliAnalysisTaskNestedLoops.cxx:133 AliAnalysisTaskNestedLoops.cxx:134 AliAnalysisTaskNestedLoops.cxx:135 AliAnalysisTaskNestedLoops.cxx:136 AliAnalysisTaskNestedLoops.cxx:137 AliAnalysisTaskNestedLoops.cxx:138 AliAnalysisTaskNestedLoops.cxx:139 AliAnalysisTaskNestedLoops.cxx:140 AliAnalysisTaskNestedLoops.cxx:141 AliAnalysisTaskNestedLoops.cxx:142 AliAnalysisTaskNestedLoops.cxx:143 AliAnalysisTaskNestedLoops.cxx:144 AliAnalysisTaskNestedLoops.cxx:145 AliAnalysisTaskNestedLoops.cxx:146 AliAnalysisTaskNestedLoops.cxx:147 AliAnalysisTaskNestedLoops.cxx:148 AliAnalysisTaskNestedLoops.cxx:149 AliAnalysisTaskNestedLoops.cxx:150 AliAnalysisTaskNestedLoops.cxx:151 AliAnalysisTaskNestedLoops.cxx:152 AliAnalysisTaskNestedLoops.cxx:153 AliAnalysisTaskNestedLoops.cxx:154 AliAnalysisTaskNestedLoops.cxx:155 AliAnalysisTaskNestedLoops.cxx:156 AliAnalysisTaskNestedLoops.cxx:157 AliAnalysisTaskNestedLoops.cxx:158 AliAnalysisTaskNestedLoops.cxx:159 AliAnalysisTaskNestedLoops.cxx:160 AliAnalysisTaskNestedLoops.cxx:161 AliAnalysisTaskNestedLoops.cxx:162 AliAnalysisTaskNestedLoops.cxx:163 AliAnalysisTaskNestedLoops.cxx:164 AliAnalysisTaskNestedLoops.cxx:165 AliAnalysisTaskNestedLoops.cxx:166 AliAnalysisTaskNestedLoops.cxx:167 AliAnalysisTaskNestedLoops.cxx:168 AliAnalysisTaskNestedLoops.cxx:169 AliAnalysisTaskNestedLoops.cxx:170 AliAnalysisTaskNestedLoops.cxx:171 AliAnalysisTaskNestedLoops.cxx:172 AliAnalysisTaskNestedLoops.cxx:173 AliAnalysisTaskNestedLoops.cxx:174 AliAnalysisTaskNestedLoops.cxx:175 AliAnalysisTaskNestedLoops.cxx:176 AliAnalysisTaskNestedLoops.cxx:177 AliAnalysisTaskNestedLoops.cxx:178 AliAnalysisTaskNestedLoops.cxx:179 AliAnalysisTaskNestedLoops.cxx:180 AliAnalysisTaskNestedLoops.cxx:181 AliAnalysisTaskNestedLoops.cxx:182 AliAnalysisTaskNestedLoops.cxx:183 AliAnalysisTaskNestedLoops.cxx:184 AliAnalysisTaskNestedLoops.cxx:185 AliAnalysisTaskNestedLoops.cxx:186 AliAnalysisTaskNestedLoops.cxx:187 AliAnalysisTaskNestedLoops.cxx:188 AliAnalysisTaskNestedLoops.cxx:189 AliAnalysisTaskNestedLoops.cxx:190 AliAnalysisTaskNestedLoops.cxx:191 AliAnalysisTaskNestedLoops.cxx:192 AliAnalysisTaskNestedLoops.cxx:193 AliAnalysisTaskNestedLoops.cxx:194 AliAnalysisTaskNestedLoops.cxx:195 AliAnalysisTaskNestedLoops.cxx:196 AliAnalysisTaskNestedLoops.cxx:197 AliAnalysisTaskNestedLoops.cxx:198 AliAnalysisTaskNestedLoops.cxx:199 AliAnalysisTaskNestedLoops.cxx:200 AliAnalysisTaskNestedLoops.cxx:201 AliAnalysisTaskNestedLoops.cxx:202 AliAnalysisTaskNestedLoops.cxx:203 AliAnalysisTaskNestedLoops.cxx:204 AliAnalysisTaskNestedLoops.cxx:205 AliAnalysisTaskNestedLoops.cxx:206