//__________________________________________________________________
AliAnalysisTaskPIDFluctuation *
AddAnalysisTaskPIDFluctuation(Int_t aodFilterBit, Float_t ptMin, Float_t ptMax, Float_t etaMin, Float_t etaMax)
{
/* init analysis name */
TString analysisName = "PIDFluctuation";
analysisName += "_";
analysisName += Form("FilterBit%d", aodFilterBit);
analysisName += "_";
analysisName += Form("pt_%.1f_%.1f", ptMin, ptMax);
analysisName += "_";
analysisName += Form("eta_%.1f_%.1f", etaMin, etaMax);
/* check analysis manager */
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr) {
Error("", "cannot get analysis manager");
return NULL;
}
/* check input event handler */
if (!mgr->GetInputEventHandler()) {
Error("", "cannot get input event handler");
return NULL;
}
/* get common input data container */
AliAnalysisDataContainer *inputc = mgr->GetCommonInputContainer();
if (!inputc) {
Error("", "cannot get common input container");
return NULL;
}
/* create output data container */
TString outputFileName = AliAnalysisManager::GetCommonFileName();
outputFileName += ":PWGCFEbyE.outputPIDFunctionAnalysis";
AliAnalysisDataContainer *outputc1 = mgr->CreateContainer(analysisName.Data(), TList::Class(), AliAnalysisManager::kOutputContainer, outputFileName.Data());
if (!outputc1) {
Error("", "cannot create output container \"Histos\"");
return NULL;
}
/* create task and connect input/output */
AliAnalysisTaskPIDFluctuation *task = new AliAnalysisTaskPIDFluctuation(analysisName.Data());
mgr->AddTask(task);
mgr->ConnectInput(task, 0, inputc);
mgr->ConnectOutput(task, 1, outputc1);
/* setup task */
task->SetESDtrackCuts(GetESDtrackCuts(aodFilterBit));
task->SetAODfilterBit(aodFilterBit);
task->SetEtaRange(etaMin, etaMax);
task->SetPtRange(ptMin, ptMax);
task->Dump();
return task;
}
//__________________________________________________________________
AliESDtrackCuts *
GetESDtrackCuts(Int_t type)
{
AliESDtrackCuts *trackCuts;
switch (type) {
case AliAODTrack::kTrkGlobal:
trackCuts = AliESDtrackCuts::GetStandardITSTPCTrackCuts2010();
break;
case AliAODTrack::kTrkTPCOnlyConstrained:
case AliAODTrack::kTrkTPCOnly:
trackCuts = AliESDtrackCuts::GetStandardTPCOnlyTrackCuts();
trackCuts->SetMinNClustersTPC(70);
break;
}
return trackCuts;
}
AddAnalysisTaskPIDFluctuation.C:1 AddAnalysisTaskPIDFluctuation.C:2 AddAnalysisTaskPIDFluctuation.C:3 AddAnalysisTaskPIDFluctuation.C:4 AddAnalysisTaskPIDFluctuation.C:5 AddAnalysisTaskPIDFluctuation.C:6 AddAnalysisTaskPIDFluctuation.C:7 AddAnalysisTaskPIDFluctuation.C:8 AddAnalysisTaskPIDFluctuation.C:9 AddAnalysisTaskPIDFluctuation.C:10 AddAnalysisTaskPIDFluctuation.C:11 AddAnalysisTaskPIDFluctuation.C:12 AddAnalysisTaskPIDFluctuation.C:13 AddAnalysisTaskPIDFluctuation.C:14 AddAnalysisTaskPIDFluctuation.C:15 AddAnalysisTaskPIDFluctuation.C:16 AddAnalysisTaskPIDFluctuation.C:17 AddAnalysisTaskPIDFluctuation.C:18 AddAnalysisTaskPIDFluctuation.C:19 AddAnalysisTaskPIDFluctuation.C:20 AddAnalysisTaskPIDFluctuation.C:21 AddAnalysisTaskPIDFluctuation.C:22 AddAnalysisTaskPIDFluctuation.C:23 AddAnalysisTaskPIDFluctuation.C:24 AddAnalysisTaskPIDFluctuation.C:25 AddAnalysisTaskPIDFluctuation.C:26 AddAnalysisTaskPIDFluctuation.C:27 AddAnalysisTaskPIDFluctuation.C:28 AddAnalysisTaskPIDFluctuation.C:29 AddAnalysisTaskPIDFluctuation.C:30 AddAnalysisTaskPIDFluctuation.C:31 AddAnalysisTaskPIDFluctuation.C:32 AddAnalysisTaskPIDFluctuation.C:33 AddAnalysisTaskPIDFluctuation.C:34 AddAnalysisTaskPIDFluctuation.C:35 AddAnalysisTaskPIDFluctuation.C:36 AddAnalysisTaskPIDFluctuation.C:37 AddAnalysisTaskPIDFluctuation.C:38 AddAnalysisTaskPIDFluctuation.C:39 AddAnalysisTaskPIDFluctuation.C:40 AddAnalysisTaskPIDFluctuation.C:41 AddAnalysisTaskPIDFluctuation.C:42 AddAnalysisTaskPIDFluctuation.C:43 AddAnalysisTaskPIDFluctuation.C:44 AddAnalysisTaskPIDFluctuation.C:45 AddAnalysisTaskPIDFluctuation.C:46 AddAnalysisTaskPIDFluctuation.C:47 AddAnalysisTaskPIDFluctuation.C:48 AddAnalysisTaskPIDFluctuation.C:49 AddAnalysisTaskPIDFluctuation.C:50 AddAnalysisTaskPIDFluctuation.C:51 AddAnalysisTaskPIDFluctuation.C:52 AddAnalysisTaskPIDFluctuation.C:53 AddAnalysisTaskPIDFluctuation.C:54 AddAnalysisTaskPIDFluctuation.C:55 AddAnalysisTaskPIDFluctuation.C:56 AddAnalysisTaskPIDFluctuation.C:57 AddAnalysisTaskPIDFluctuation.C:58 AddAnalysisTaskPIDFluctuation.C:59 AddAnalysisTaskPIDFluctuation.C:60 AddAnalysisTaskPIDFluctuation.C:61 AddAnalysisTaskPIDFluctuation.C:62 AddAnalysisTaskPIDFluctuation.C:63 AddAnalysisTaskPIDFluctuation.C:64 AddAnalysisTaskPIDFluctuation.C:65 AddAnalysisTaskPIDFluctuation.C:66 AddAnalysisTaskPIDFluctuation.C:67 AddAnalysisTaskPIDFluctuation.C:68 AddAnalysisTaskPIDFluctuation.C:69 AddAnalysisTaskPIDFluctuation.C:70 AddAnalysisTaskPIDFluctuation.C:71 AddAnalysisTaskPIDFluctuation.C:72 AddAnalysisTaskPIDFluctuation.C:73 AddAnalysisTaskPIDFluctuation.C:74 AddAnalysisTaskPIDFluctuation.C:75 AddAnalysisTaskPIDFluctuation.C:76 AddAnalysisTaskPIDFluctuation.C:77 AddAnalysisTaskPIDFluctuation.C:78 AddAnalysisTaskPIDFluctuation.C:79 AddAnalysisTaskPIDFluctuation.C:80 AddAnalysisTaskPIDFluctuation.C:81