]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ANALYSIS/TenderSupplies/AddTaskTender.C
switched back to raw:// CDB
[u/mrichter/AliRoot.git] / ANALYSIS / TenderSupplies / AddTaskTender.C
index 5f8ed739b747e36bb36cd5f7d07ff13095827bab..ea0b4c9bf5bf6d26e1e68c2584501ae556ee7122 100644 (file)
@@ -1,12 +1,13 @@
-AliAnalysisTask *AddTaskTender(){
+AliAnalysisTask *AddTaskTender(Bool_t useV0=kFALSE){
   //get the current analysis manager
+  Bool_t checkEvtSelection = useV0;
   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
   if (!mgr) {
     Error("AddTask_tender_Tender", "No analysis manager found.");
     return 0;
   }
   // currently don't accept AOD input
-  if (mgr->GetInputEventHandler()->IsA()!=AliESDInputHandler::Class()) {
+  if (!mgr->GetInputEventHandler()->InheritsFrom(AliESDInputHandler::Class())) {
     Error("AddTask_tender_Tender","The analysis tender only works with ESD input!");
     return 0;
   }
@@ -14,16 +15,32 @@ AliAnalysisTask *AddTaskTender(){
   
   //========= Add tender to the ANALYSIS manager and set default storage =====
   AliTender *tender=new AliTender("AnalysisTender");
+  tender->SetCheckEventSelection(checkEvtSelection);
   tender->SetDefaultCDBStorage("raw://");
   mgr->AddTask(tender);
+  if (checkEvtSelection) {
+     if (mgr->GetTasks()->First() != (TObject*)tender) {
+        ::Error("When setting the tender to check the event selection, it has to be the first wagon ! Aborting.");
+        return NULL;
+     }
+  }   
   
+  //========= Attach VZERO supply ======
+  if (useV0) {
+     AliVZEROTenderSupply *vzeroSupply=new AliVZEROTenderSupply("VZEROtender");
+     vzeroSupply->SetDebug(kFALSE);
+     tender->AddSupply(vzeroSupply);
+  }   
   //========= Attach TPC supply ======
   AliTPCTenderSupply *tpcSupply=new AliTPCTenderSupply("TPCtender");
+  tpcSupply->SetDebugLevel(2);
+  //tpcSupply->SetMip(50.);
   tender->AddSupply(tpcSupply);
 
   //========= Attach TOF supply ======
-  AliTOFTenderSupply *TOFtender = new AliTOFTenderSupply("TOFtender");
-  tender->AddSupply(TOFtender);
+  AliTOFTenderSupply *tofTender = new AliTOFTenderSupply("TOFtender");
+  tofTender->SetTimeZeroType(AliESDpid::kTOF_T0);
+  tender->AddSupply(tofTender);
   
   //========= Attach TRD supply ======
   AliTRDTenderSupply *trdSupply=new AliTRDTenderSupply("TRDtender");
@@ -46,7 +63,7 @@ AliAnalysisTask *AddTaskTender(){
  
   //           connect containers
   mgr->ConnectInput  (tender,  0, mgr->GetCommonInputContainer() );
-  mgr->ConnectOutput (tender,  0, coutput1);
+  mgr->ConnectOutput (tender,  1, coutput1);
  
   return tender;
 }