2 * @file AddTaskForwardFlow.C
3 * @author Christian Holm Christensen <cholm@dalsgaard.hehi.nbi.dk>
4 * @date Wed Mar 23 12:14:17 2011
9 * @ingroup pwglf_forward_scripts_tasks
12 * @defgroup pwglf_forward_flow Flow
13 * @ingroup pwglf_forward_topical
16 * Add Flow task to train
25 * @ingroup pwglf_forward_flow
27 void AddTaskForwardFlow(TString type = "",
34 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
36 Error("AddFMDFlowTask", "No analysis manager to connect to.");
40 AliAODInputHandler* aodInput = dynamic_cast<AliAODInputHandler*> (AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler());
43 if (aodInput) aod = kTRUE;
45 Error("AddTaskForwardFlow", "No analysis manager to connect to.");
49 // --- Check which harmonics to calculate --- //
58 if (type.Length() > 0) {
59 if (!type.Contains("1")) v1 = kFALSE;
60 if (!type.Contains("2")) v2 = kFALSE;
61 if (!type.Contains("3")) v3 = kFALSE;
62 if (!type.Contains("4")) v4 = kFALSE;
63 if (!type.Contains("5")) v5 = kFALSE;
64 if (!type.Contains("6")) v6 = kFALSE;
67 // --- Create output containers and find input from fmd task --- //
69 TString outputFile = AliAnalysisManager::GetCommonFileName();
70 outputFile += ":FlowResults";
72 AliAnalysisDataContainer* qcout = mgr->CreateContainer("QCumulants", TList::Class(), AliAnalysisManager::kOutputContainer, outputFile);
74 // --- For the selected flow tasks the input and output is set --- //
76 AliForwardFlowTaskQC* qc = new AliForwardFlowTaskQC("QCumulants");
78 qc->SetDoHarmonics(v1, v2, v3, v4, v5, v6);
79 qc->SetUseNEtaBins(etabins);
82 qc->AddFlowType(addFType);
83 qc->AddFlowOrder(addFOrder);
86 mgr->ConnectInput(qc, 0, mgr->GetCommonInputContainer());
87 mgr->ConnectOutput(qc, 1, qcout);