ROOT logo


AliAnalysisTask *AddTaskTPCTOFpA(Int_t identifier = 0, Bool_t isMC = kFALSE, Bool_t isTPConly = kFALSE, Bool_t writeOwnFile = kFALSE, Bool_t saveMotherPDG = kFALSE, Bool_t useEvenDcaBinning = kFALSE, Bool_t smallTHnSparse = kFALSE, Double_t nSigmaTPCLow= -3., Double_t nSigmaTPCHigh = 3., Double_t rapidityLow = -0.5, Double_t rapidityHigh = 0.5, Bool_t ispA=kTRUE, Bool_t rapCMS = kFALSE, TString multEst = "V0A", Bool_t setTrackCuts = kFALSE, AliESDtrackCuts *ESDtrackCuts = 0){


  //get the current analysis manager
  AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
  if (!mgr) {
    Error("AddTask_janielsk_TPCTOFpA", "No analysis manager found.");
    return 0;
  }
  //============= Set Task Name ===================
  //TString taskName=("AliAnalysisTPCTOFpA.cxx+g");
  //===============================================
  //            Load the task
  //gROOT->LoadMacro(taskName.Data());


  
  //========= Add task to the ANALYSIS manager =====

  //normal tracks
  AliAnalysisTPCTOFpA *task = new AliAnalysisTPCTOFpA("janielskTaskTPCTOFpA");
  //task->SelectCollisionCandidates(trigger.Data());

  //switches
  if (isMC) task->SetIsMCtrue(isMC);
  if (isTPConly)task->SetUseTPConlyTracks(isTPConly);
  if (saveMotherPDG) task->SetSaveMotherPDG(saveMotherPDG);
  if (useEvenDcaBinning) task->SetEvenDCAbinning(kTRUE);
  if (smallTHnSparse){
    task->SetSmallTHnSparse(kTRUE);
    task->SetTPCnSigmaCuts(nSigmaTPCLow,nSigmaTPCHigh);
    task->SetRapidityCuts(rapidityLow,rapidityHigh);
  }
  if (ispA) task->SetIspA(kTRUE);
  if (rapCMS) task->SetRapCMS(kTRUE);
  task->SetCentEst(multEst.Data());

  //initialize task
  task->Initialize();

  //esd cuts need to be set after initialize or cuts will be replaced by standard cuts in initialize
  if (setTrackCuts) task->SetESDtrackCuts(ESDtrackCuts);

  //add task to manager
  mgr->AddTask(task);


  

  //================================================
  //              data containers
  //================================================
  //            find input container
  //below the trunk version
  AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();

/*
  //dumm output container
  AliAnalysisDataContainer *coutput0 =
      mgr->CreateContainer(Form("akalweit_tree%i",identifier),
                           TTree::Class(),
                           AliAnalysisManager::kExchangeContainer,
                           Form("akalweit_default%i",identifier));


  //define output containers, please use 'username'_'somename'
  AliAnalysisDataContainer *coutput1 = 
      mgr->CreateContainer(Form("akalweit_TPCTOFpA%i",identifier), TList::Class(),
                           AliAnalysisManager::kOutputContainer,Form("akalweit_TPCTOFpA%i.root",identifier));
*/

  AliAnalysisDataContainer *coutput1;

  if (!writeOwnFile) {
  	coutput1 =  mgr->CreateContainer(Form("janielsk_TPCTOFpA%i",identifier), TList::Class(), AliAnalysisManager::kOutputContainer, Form("%s:janielsk_TPCTOFpA", AliAnalysisManager::GetCommonFileName())); 
	}
  else {
	coutput1 =  mgr->CreateContainer(Form("janielsk_TPCTOFpA%i",identifier), TList::Class(), AliAnalysisManager::kOutputContainer, Form("janielsk_TPCTOFpA.root"));
	}



  //connect containers

  //
  mgr->ConnectInput  (task,  0, cinput );
  //mgr->ConnectOutput (task,  0, coutput0);
  mgr->ConnectOutput (task,  1, coutput1);

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