3 AliAnalysisTaskScale* AddTaskScale(
4 const char *nTracks = "Tracks",
5 const char *nClusters = "CaloClustersCorr",
6 Double_t trackptcut = 0.150,
7 Double_t clusptcut = 0.150,
8 const char *taskname = "Scale",
9 const char *outfilename = "AnalysisResults.root"
12 // Get the pointer to the existing analysis manager via the static access method.
13 //==============================================================================
14 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
17 ::Error("AddTaskScale", "No analysis manager to connect to.");
21 // Check the analysis type using the event handlers connected to the analysis manager.
22 //==============================================================================
23 if (!mgr->GetInputEventHandler())
25 ::Error("AddTaskScale", "This task requires an input event handler");
29 //-------------------------------------------------------
30 // Init the task and do settings
31 //-------------------------------------------------------
33 TString name(Form("%s_%s_%s_%d_%d", taskname, nTracks, nClusters, TMath::FloorNint(trackptcut*1000), TMath::FloorNint(clusptcut*1000)));
34 AliAnalysisTaskScale *scaletask = new AliAnalysisTaskScale(name);
35 scaletask->SetTracksName(nTracks);
36 scaletask->SetClusName(nClusters);
37 scaletask->SetTrackPtCut(trackptcut);
38 scaletask->SetClusPtCut(clusptcut);
40 //-------------------------------------------------------
41 // Final settings, pass to manager and set the containers
42 //-------------------------------------------------------
44 mgr->AddTask(scaletask);
46 // Create containers for input/output
47 TString contname(name);
48 contname += "_Histos";
49 mgr->ConnectInput (scaletask, 0, mgr->GetCommonInputContainer() );
50 AliAnalysisDataContainer *coscale = mgr->CreateContainer(contname,
52 AliAnalysisManager::kOutputContainer,
54 mgr->ConnectOutput(scaletask,1,coscale);