ROOT logo
AliAnalysisTaskExtractPerformanceV0 *AddTaskExtractPerformanceV0( Bool_t lSwitchIsNuclear     = kFALSE, 
                                                                  Bool_t lSwitchINT7          = kFALSE,
                                                                  Bool_t lSwitchUseOnTheFly   = kFALSE,
                                                                  Bool_t lSwitchTakeAllTracks = kFALSE,  
                                                                  const TString lMasterJobSessionFlag = "")
{
// Creates, configures and attaches to the train a cascades check task.
   // Get the pointer to the existing analysis manager via the static access method.
   //==============================================================================
   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
   if (!mgr) {
      ::Error("AddTaskExtractPerformanceV0", "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("AddTaskExtractPerformanceV0", "This task requires an input event handler");
      return NULL;
   }   
   TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"

   // Create and configure the task
	 AliAnalysisTaskExtractPerformanceV0 *taskv0extractperformance = new AliAnalysisTaskExtractPerformanceV0("taskv0extractperformance");

   //Configuration
   taskv0extractperformance -> SetIsNuclear     ( lSwitchIsNuclear     );
   taskv0extractperformance -> SetINT7Trigger   ( lSwitchINT7          );
   taskv0extractperformance -> SetUseOnTheFly   ( lSwitchUseOnTheFly   );
   taskv0extractperformance -> SetTakeAllTracks ( lSwitchTakeAllTracks );

   mgr->AddTask(taskv0extractperformance);

   TString outputFileName = AliAnalysisManager::GetCommonFileName();
   
   outputFileName += ":PWGLFExtractPerformanceV0";
   //if (lSwitchIsNuclear) outputFileName += "_AA";
   outputFileName += "_PP";
   if (mgr->GetMCtruthEventHandler()) outputFileName += "_MC";
   //if(lMasterJobSessionFlag.Length()) outputFileName += lMasterJobSessionFlag.Data();
   
   Printf("Set OutputFileName : \n %s\n", outputFileName.Data() );

   AliAnalysisDataContainer *coutputList = mgr->CreateContainer("clistV0MC",
							     TList::Class(),
							     AliAnalysisManager::kOutputContainer,
							     outputFileName );
   AliAnalysisDataContainer *coutputTree = mgr->CreateContainer("cTreeMC",
							     TTree::Class(),
							     AliAnalysisManager::kOutputContainer,
							     outputFileName );
   
   //This one you should merge in file-resident ways...
   coutputTree->SetSpecialOutput();

   //Recommendation: Tree as a single output slot
   mgr->ConnectInput( taskv0extractperformance, 0, mgr->GetCommonInputContainer());
   mgr->ConnectOutput(taskv0extractperformance, 1, coutputList);
   mgr->ConnectOutput(taskv0extractperformance, 2, coutputTree);
   
   return taskv0extractperformance;
}   
 AddTaskExtractPerformanceV0.C:1
 AddTaskExtractPerformanceV0.C:2
 AddTaskExtractPerformanceV0.C:3
 AddTaskExtractPerformanceV0.C:4
 AddTaskExtractPerformanceV0.C:5
 AddTaskExtractPerformanceV0.C:6
 AddTaskExtractPerformanceV0.C:7
 AddTaskExtractPerformanceV0.C:8
 AddTaskExtractPerformanceV0.C:9
 AddTaskExtractPerformanceV0.C:10
 AddTaskExtractPerformanceV0.C:11
 AddTaskExtractPerformanceV0.C:12
 AddTaskExtractPerformanceV0.C:13
 AddTaskExtractPerformanceV0.C:14
 AddTaskExtractPerformanceV0.C:15
 AddTaskExtractPerformanceV0.C:16
 AddTaskExtractPerformanceV0.C:17
 AddTaskExtractPerformanceV0.C:18
 AddTaskExtractPerformanceV0.C:19
 AddTaskExtractPerformanceV0.C:20
 AddTaskExtractPerformanceV0.C:21
 AddTaskExtractPerformanceV0.C:22
 AddTaskExtractPerformanceV0.C:23
 AddTaskExtractPerformanceV0.C:24
 AddTaskExtractPerformanceV0.C:25
 AddTaskExtractPerformanceV0.C:26
 AddTaskExtractPerformanceV0.C:27
 AddTaskExtractPerformanceV0.C:28
 AddTaskExtractPerformanceV0.C:29
 AddTaskExtractPerformanceV0.C:30
 AddTaskExtractPerformanceV0.C:31
 AddTaskExtractPerformanceV0.C:32
 AddTaskExtractPerformanceV0.C:33
 AddTaskExtractPerformanceV0.C:34
 AddTaskExtractPerformanceV0.C:35
 AddTaskExtractPerformanceV0.C:36
 AddTaskExtractPerformanceV0.C:37
 AddTaskExtractPerformanceV0.C:38
 AddTaskExtractPerformanceV0.C:39
 AddTaskExtractPerformanceV0.C:40
 AddTaskExtractPerformanceV0.C:41
 AddTaskExtractPerformanceV0.C:42
 AddTaskExtractPerformanceV0.C:43
 AddTaskExtractPerformanceV0.C:44
 AddTaskExtractPerformanceV0.C:45
 AddTaskExtractPerformanceV0.C:46
 AddTaskExtractPerformanceV0.C:47
 AddTaskExtractPerformanceV0.C:48
 AddTaskExtractPerformanceV0.C:49
 AddTaskExtractPerformanceV0.C:50
 AddTaskExtractPerformanceV0.C:51
 AddTaskExtractPerformanceV0.C:52
 AddTaskExtractPerformanceV0.C:53
 AddTaskExtractPerformanceV0.C:54
 AddTaskExtractPerformanceV0.C:55
 AddTaskExtractPerformanceV0.C:56
 AddTaskExtractPerformanceV0.C:57
 AddTaskExtractPerformanceV0.C:58
 AddTaskExtractPerformanceV0.C:59
 AddTaskExtractPerformanceV0.C:60
 AddTaskExtractPerformanceV0.C:61
 AddTaskExtractPerformanceV0.C:62
 AddTaskExtractPerformanceV0.C:63
 AddTaskExtractPerformanceV0.C:64