ROOT logo
void analysis(Int_t first = -1, Int_t last = -1, const char* directory=".")
{

  gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libANALYSIS");

  AliVAODParticle::SetDebug(0);
  AliRunAnalysis* analysis = new AliRunAnalysis();
  
  ::Info("analysis.C","Setting dirs");
  TObjArray* dirs=0;
  if ( ((first >= 0) && (last >= 0) ) && ( (last-first)>=0 ) )
  {//read from many dirs dirs
    char buff[50];
    dirs = new TObjArray(last-first+1);
    for (Int_t i = first; i<=last; i++)
     {
//     sprintf(buff,"%s/%s/%s/%05.5d",basedir,field,serie,i);
       printf("%s/%d\n",directory,i);
       sprintf(buff,"%s/%d",directory,i);
       TObjString *odir= new TObjString(buff);
       dirs->Add(odir);
     }
   }

  AliReaderAOD* reader = new AliReaderAOD("AOD.root");
  reader->SetDirs(dirs);
//  AliReaderESD* reader = new AliReaderESD(dirs);
//  reader->ReadSimulatedData(kTRUE);
//  reader->SetReadMostProbableOnly(kTRUE);

/*  
   //example PID cuts
  AliAODParticleCut* partcut = new  AliAODParticleCut();
  partcut->SetPID(kPiPlus);//here we define the incarnation 
  AliAODPIDCut* pidcut = new AliAODPIDCut(kPiPlus,0.5);//accept all particles types that have PID prob > 50%
  partcut->AddBasePartCut(pidcut);//
  reader->AddParticleCut(partcut);//This guy makes a copy of a cut for himself so we can modify it here
  
  partcut->SetPID(kPiMinus);//here we define that particle has incarnation PiMinus
  pidcut->SetPID(kPiMinus);//here we define to check if PID probability of being kPiMinus is greater thann 0.5 (number defined few lines above)
  reader->AddParticleCut(partcut);
  
  pidcut->SetPID(kKPlus);
  pidcut->SetPID(kKPlus);
  reader->AddParticleCut(partcut);
  
  pidcut->SetPID(kKMinus);
  pidcut->SetPID(kKMinus);
  reader->AddParticleCut(partcut);
*/  
  
  AliFlowAnalysis* flow = new AliFlowAnalysis();
  analysis->SetReader(reader);
  
  analysis->Add(flow);
  analysis->Run();
  delete analysis;
}
 analysis.C:1
 analysis.C:2
 analysis.C:3
 analysis.C:4
 analysis.C:5
 analysis.C:6
 analysis.C:7
 analysis.C:8
 analysis.C:9
 analysis.C:10
 analysis.C:11
 analysis.C:12
 analysis.C:13
 analysis.C:14
 analysis.C:15
 analysis.C:16
 analysis.C:17
 analysis.C:18
 analysis.C:19
 analysis.C:20
 analysis.C:21
 analysis.C:22
 analysis.C:23
 analysis.C:24
 analysis.C:25
 analysis.C:26
 analysis.C:27
 analysis.C:28
 analysis.C:29
 analysis.C:30
 analysis.C:31
 analysis.C:32
 analysis.C:33
 analysis.C:34
 analysis.C:35
 analysis.C:36
 analysis.C:37
 analysis.C:38
 analysis.C:39
 analysis.C:40
 analysis.C:41
 analysis.C:42
 analysis.C:43
 analysis.C:44
 analysis.C:45
 analysis.C:46
 analysis.C:47
 analysis.C:48
 analysis.C:49
 analysis.C:50
 analysis.C:51
 analysis.C:52
 analysis.C:53
 analysis.C:54
 analysis.C:55
 analysis.C:56
 analysis.C:57
 analysis.C:58
 analysis.C:59