ROOT logo
// $Id$

AliAnalysisTaskCLQA* AddTaskCLQA(
  const char *ntracks            = "",
  const char *nclusters          = "",
  const char *njets              = "",
  Bool_t doCumulants             = kFALSE,
  Double_t cumMmin               = 10,
  Double_t cumPtMin              = 0.3,
  Double_t cumPtMax              = 5.0,
  Double_t cumEtaMin             = -1.0,
  Double_t cumEtaMax             = +1.0,
  UInt_t trigsel                 = AliVEvent::kAnyINT|AliVEvent::kHighMult|AliVEvent::kCentral|AliVEvent::kSemiCentral|AliVEvent::kINT8,
  const char *taskname           = "ATCLQA"
)
{  
  // Get the pointer to the existing analysis manager via the static access method.
  //==============================================================================
  AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
  if (!mgr)
  {
    ::Error("AddTaskCLQA", "No analysis manager to connect to.");
    return NULL;
  }  
  
  // Check the analysis type using the event handlers connected to the analysis manager.
  //==============================================================================
  if (!mgr->GetInputEventHandler())
  {
    ::Error("AddTaskCLQA", "This task requires an input event handler");
    return NULL;
  }
  
  //-------------------------------------------------------
  // Init the task and do settings
  //-------------------------------------------------------
  
  TString name(taskname);
  if (strcmp(ntracks,"")) {
    name += "_";
    name += ntracks;
  }
  if (strcmp(nclusters,"")) {
    name += "_";
    name += nclusters;
  }
  if (strcmp(njets,"")) {
    name += "_";
    name += njets;
  }

  AliAnalysisTaskCLQA* qaTask = new AliAnalysisTaskCLQA(name);
  qaTask->SetTracksName(ntracks);
  qaTask->SetClusName(nclusters);
  qaTask->SetDoCumulants(doCumulants);
  qaTask->SetCumParams(cumMmin,cumPtMin,cumPtMax,cumEtaMin,cumEtaMax);
  qaTask->SelectCollisionCandidates(trigsel);

  //-------------------------------------------------------
  // Final settings, pass to manager and set the containers
  //-------------------------------------------------------

  mgr->AddTask(qaTask);
  
  // Create containers for input/output
  AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer()  ;

  TString contName(name);
  contName += "_histos";
  AliAnalysisDataContainer *coutput = mgr->CreateContainer(contName.Data(), 
							   TList::Class(),
							   AliAnalysisManager::kOutputContainer,
							   Form("%s", AliAnalysisManager::GetCommonFileName()));
  mgr->ConnectInput  (qaTask, 0,  cinput );
  mgr->ConnectOutput (qaTask, 1, coutput );

  return qaTask;
}
 AddTaskCLQA.C:1
 AddTaskCLQA.C:2
 AddTaskCLQA.C:3
 AddTaskCLQA.C:4
 AddTaskCLQA.C:5
 AddTaskCLQA.C:6
 AddTaskCLQA.C:7
 AddTaskCLQA.C:8
 AddTaskCLQA.C:9
 AddTaskCLQA.C:10
 AddTaskCLQA.C:11
 AddTaskCLQA.C:12
 AddTaskCLQA.C:13
 AddTaskCLQA.C:14
 AddTaskCLQA.C:15
 AddTaskCLQA.C:16
 AddTaskCLQA.C:17
 AddTaskCLQA.C:18
 AddTaskCLQA.C:19
 AddTaskCLQA.C:20
 AddTaskCLQA.C:21
 AddTaskCLQA.C:22
 AddTaskCLQA.C:23
 AddTaskCLQA.C:24
 AddTaskCLQA.C:25
 AddTaskCLQA.C:26
 AddTaskCLQA.C:27
 AddTaskCLQA.C:28
 AddTaskCLQA.C:29
 AddTaskCLQA.C:30
 AddTaskCLQA.C:31
 AddTaskCLQA.C:32
 AddTaskCLQA.C:33
 AddTaskCLQA.C:34
 AddTaskCLQA.C:35
 AddTaskCLQA.C:36
 AddTaskCLQA.C:37
 AddTaskCLQA.C:38
 AddTaskCLQA.C:39
 AddTaskCLQA.C:40
 AddTaskCLQA.C:41
 AddTaskCLQA.C:42
 AddTaskCLQA.C:43
 AddTaskCLQA.C:44
 AddTaskCLQA.C:45
 AddTaskCLQA.C:46
 AddTaskCLQA.C:47
 AddTaskCLQA.C:48
 AddTaskCLQA.C:49
 AddTaskCLQA.C:50
 AddTaskCLQA.C:51
 AddTaskCLQA.C:52
 AddTaskCLQA.C:53
 AddTaskCLQA.C:54
 AddTaskCLQA.C:55
 AddTaskCLQA.C:56
 AddTaskCLQA.C:57
 AddTaskCLQA.C:58
 AddTaskCLQA.C:59
 AddTaskCLQA.C:60
 AddTaskCLQA.C:61
 AddTaskCLQA.C:62
 AddTaskCLQA.C:63
 AddTaskCLQA.C:64
 AddTaskCLQA.C:65
 AddTaskCLQA.C:66
 AddTaskCLQA.C:67
 AddTaskCLQA.C:68
 AddTaskCLQA.C:69
 AddTaskCLQA.C:70
 AddTaskCLQA.C:71
 AddTaskCLQA.C:72
 AddTaskCLQA.C:73
 AddTaskCLQA.C:74
 AddTaskCLQA.C:75
 AddTaskCLQA.C:76
 AddTaskCLQA.C:77
 AddTaskCLQA.C:78
 AddTaskCLQA.C:79