ROOT logo
void Load() ;

void runBGvsTime(const char * incollection,const char *filename,UInt_t start, UInt_t end, Int_t cuts = 0, Bool_t mc = kFALSE, Bool_t useBINT = kFALSE, Int_t nev=123456789) {

  //  gDebug = 3;
  Load();

  AliLog::SetGlobalLogLevel(AliLog::kInfo);

  // Connect to the grid and create chain
  //  TGrid::Connect("alien://");
  TChain* analysisChain = 0;
  analysisChain = new TChain("esdTree");
  if (TString(incollection).Contains(".root")){
    analysisChain->Add(incollection);
  }
  else if (TString(incollection).Contains("xml")){
    TGrid::Connect("alien://");
    TAlienCollection * coll = TAlienCollection::Open (incollection);
    while(coll->Next()){
      analysisChain->Add(TString("alien://")+coll->GetLFN());
    }
  } else {
    ifstream file_collect(incollection);
    TString line;
    while (line.ReadLine(file_collect) ) {
      analysisChain->Add(line.Data());
    }
  }
  analysisChain->GetListOfFiles()->Print();

  //
  //____________________________________________//
  // Make the analysis manager
  AliAnalysisManager *mgr = new AliAnalysisManager("TestManager");
  //  mgr->SetDebugLevel(3);
  // Add ESD handler
  AliESDInputHandler* esdH = new AliESDInputHandler; 
  //  AliESDInputHandler* esdH = new AliESDInputHandlerRP; // for RecPoints
  
//   esdH->SetInactiveBranches("AliESDACORDE FMD ALIESDTZERO ALIESDVZERO ALIESDZDC AliRawDataErrorLogs CaloClusters Cascades EMCALCells EMCALTrigger ESDfriend Kinks Kinks Cascades AliESDTZERO ALIESDACORDE MuonTracks TrdTracks CaloClusters");
  mgr->SetInputEventHandler(esdH);
	
//   AliMCEventHandler *mc = new AliMCEventHandler();
//   mc->SetReadTR(kFALSE);
//   mgr->SetMCtruthEventHandler(mc);
	
  if(mc) {
    AliMCEventHandler *mch = new AliMCEventHandler();
    mch->SetReadTR(kFALSE);
    mgr->SetMCtruthEventHandler(mch);
  }
  // assign simple task
  //____________________________________________//
  // assign simple task
  AliAnalysisTaskBGvsTime * task = new AliAnalysisTaskBGvsTime("TaskBGvsTime");
  //  task->SetMC();
//   const Int_t mult_bins[] = {0,10,50,1000};
//   task->SetMultBins(4,mult_bins);
  const Int_t mult_bins[] = {0,1000};
  task->SetMultBins(2,mult_bins);
  task->SetTimes(start,end);
  task->SetBinWidth(300); // binw in secs

  if(mc) task->SetMC();

  if (cuts == 0 )       task->SetNoCuts();
  else if (cuts == 2 )  task->SetUsePhysicsSelection();
  else if (cuts == 3 )  {task->SetUsePhysicsSelection();task->SetUseZeroBin();}
  else if (cuts == 4 )  {task->SetUsePhysicsSelection();task->SetSkipV0();task->SetUseZeroBin();}
  else if (cuts == 5 )  {task->SetUsePhysicsSelection();task->SetSkipV0();task->SetSkipZeroBin();}

  if(useBINT) task->SetUseBI();

  mgr->AddTask(task);

  AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();	
  mgr->ConnectInput(task,0,cinput1);

  // Attach output
  cOutput = mgr->CreateContainer("BGvsTime", 
				 AliHistoListWrapper::Class(), AliAnalysisManager::kOutputContainer,filename);
  mgr->ConnectOutput(task, 1, cOutput);      
  cOutput = mgr->CreateContainer("PhysSel", 
				 AliPhysicsSelection::Class(), AliAnalysisManager::kOutputContainer,filename);
  mgr->ConnectOutput(task, 2, cOutput);      

	
  //____________________________________________//

  if (!mgr->InitAnalysis()) return;
	
  mgr->PrintStatus();
  mgr->StartAnalysis("local",analysisChain,nev);




}

void Load() {

  //load the required aliroot libraries
  gSystem->Load("libANALYSIS") ;
  gSystem->Load("libANALYSISalice") ;
  gSystem->Load("libCORRFW") ;
  gSystem->Load("libITSbase") ;
  gSystem->Load("libPWG0base") ;

  //compile online the task class
  gSystem->SetIncludePath("-I. -I$ALICE_ROOT/include -I$ALICE_ROOT/PWG0/ -I$ROOTSYS/include");
  //  gROOT->LoadMacro("./AliAnalysisTaskCombPIDSpectra.cxx+");
  //  gROOT->LoadMacro("AliBackgroundSelection.cxx++g");
  gROOT->LoadMacro("AliHistoListWrapper.cxx++g");   
  gROOT->LoadMacro("AliAnalysisTaskBGvsTime.cxx++g");
}
 runBGvsTime.C:1
 runBGvsTime.C:2
 runBGvsTime.C:3
 runBGvsTime.C:4
 runBGvsTime.C:5
 runBGvsTime.C:6
 runBGvsTime.C:7
 runBGvsTime.C:8
 runBGvsTime.C:9
 runBGvsTime.C:10
 runBGvsTime.C:11
 runBGvsTime.C:12
 runBGvsTime.C:13
 runBGvsTime.C:14
 runBGvsTime.C:15
 runBGvsTime.C:16
 runBGvsTime.C:17
 runBGvsTime.C:18
 runBGvsTime.C:19
 runBGvsTime.C:20
 runBGvsTime.C:21
 runBGvsTime.C:22
 runBGvsTime.C:23
 runBGvsTime.C:24
 runBGvsTime.C:25
 runBGvsTime.C:26
 runBGvsTime.C:27
 runBGvsTime.C:28
 runBGvsTime.C:29
 runBGvsTime.C:30
 runBGvsTime.C:31
 runBGvsTime.C:32
 runBGvsTime.C:33
 runBGvsTime.C:34
 runBGvsTime.C:35
 runBGvsTime.C:36
 runBGvsTime.C:37
 runBGvsTime.C:38
 runBGvsTime.C:39
 runBGvsTime.C:40
 runBGvsTime.C:41
 runBGvsTime.C:42
 runBGvsTime.C:43
 runBGvsTime.C:44
 runBGvsTime.C:45
 runBGvsTime.C:46
 runBGvsTime.C:47
 runBGvsTime.C:48
 runBGvsTime.C:49
 runBGvsTime.C:50
 runBGvsTime.C:51
 runBGvsTime.C:52
 runBGvsTime.C:53
 runBGvsTime.C:54
 runBGvsTime.C:55
 runBGvsTime.C:56
 runBGvsTime.C:57
 runBGvsTime.C:58
 runBGvsTime.C:59
 runBGvsTime.C:60
 runBGvsTime.C:61
 runBGvsTime.C:62
 runBGvsTime.C:63
 runBGvsTime.C:64
 runBGvsTime.C:65
 runBGvsTime.C:66
 runBGvsTime.C:67
 runBGvsTime.C:68
 runBGvsTime.C:69
 runBGvsTime.C:70
 runBGvsTime.C:71
 runBGvsTime.C:72
 runBGvsTime.C:73
 runBGvsTime.C:74
 runBGvsTime.C:75
 runBGvsTime.C:76
 runBGvsTime.C:77
 runBGvsTime.C:78
 runBGvsTime.C:79
 runBGvsTime.C:80
 runBGvsTime.C:81
 runBGvsTime.C:82
 runBGvsTime.C:83
 runBGvsTime.C:84
 runBGvsTime.C:85
 runBGvsTime.C:86
 runBGvsTime.C:87
 runBGvsTime.C:88
 runBGvsTime.C:89
 runBGvsTime.C:90
 runBGvsTime.C:91
 runBGvsTime.C:92
 runBGvsTime.C:93
 runBGvsTime.C:94
 runBGvsTime.C:95
 runBGvsTime.C:96
 runBGvsTime.C:97
 runBGvsTime.C:98
 runBGvsTime.C:99
 runBGvsTime.C:100
 runBGvsTime.C:101
 runBGvsTime.C:102
 runBGvsTime.C:103
 runBGvsTime.C:104
 runBGvsTime.C:105
 runBGvsTime.C:106
 runBGvsTime.C:107
 runBGvsTime.C:108
 runBGvsTime.C:109
 runBGvsTime.C:110
 runBGvsTime.C:111
 runBGvsTime.C:112
 runBGvsTime.C:113
 runBGvsTime.C:114
 runBGvsTime.C:115
 runBGvsTime.C:116
 runBGvsTime.C:117