ROOT logo
//********************************************************************
//     Example (very naive for the moment) of the data analysis 
//                    using the ESD classes
//     Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch
//     Modified by Basanta K. Nandi for PMD analysis
//********************************************************************

#if !defined( __CINT__) || defined(__MAKECINT__)
  #include <Riostream.h>
  #include "TTree.h"
  #include "TFile.h"
  #include "TH1F.h"
  #include "TCanvas.h"
  #include "TStyle.h"
  #include "TStopwatch.h"

  #include "AliESD.h"
#endif

extern TStyle *gStyle;

Int_t AliPMDesdanal() { 
   TStopwatch timer;

   gStyle->SetOptStat(111110);
   gStyle->SetOptFit(1);

//****** File with the ESD
   TFile *ef=TFile::Open("AliESDs.root");
   if (!ef || !ef->IsOpen()) {cerr<<"Can't AliESDs.root !\n"; return 1;}
   AliESDEvent * event = new AliESDEvent;
   TTree* tree = (TTree*) ef->Get("esdTree");
   if (!tree) {cerr<<"no ESD tree found\n"; return 1;};
   event->ReadFromTree(tree);
   Int_t n=0;

//******* The loop over events
   while (tree->GetEvent(n)) {
     cout<<endl<<"Processing event number : "<<n++<<endl;


     Int_t npmdcl=event->GetNumberOfPmdTracks();
     cout<<"Number of PMD tracks : "<<npmdcl<<endl; 

     //****** The loop over PMD clusters
     while (npmdcl--) {
       AliESDPmdTrack *pmdtr = event->GetPmdTrack(npmdcl);
       
       Int_t   det   = pmdtr->GetDetector(); 
       Float_t clsX  = pmdtr->GetClusterX();
       Float_t clsY  = pmdtr->GetClusterY();
       Float_t clsZ  = pmdtr->GetClusterZ();
       Float_t ncell = pmdtr->GetClusterCells();
       Float_t adc   = pmdtr->GetClusterADC();
       Float_t pid   = pmdtr->GetClusterPID();
       
     }
   }

   delete event;

   timer.Stop();
   timer.Print();

   return 0;
 AliPMDesdanal.C:1
 AliPMDesdanal.C:2
 AliPMDesdanal.C:3
 AliPMDesdanal.C:4
 AliPMDesdanal.C:5
 AliPMDesdanal.C:6
 AliPMDesdanal.C:7
 AliPMDesdanal.C:8
 AliPMDesdanal.C:9
 AliPMDesdanal.C:10
 AliPMDesdanal.C:11
 AliPMDesdanal.C:12
 AliPMDesdanal.C:13
 AliPMDesdanal.C:14
 AliPMDesdanal.C:15
 AliPMDesdanal.C:16
 AliPMDesdanal.C:17
 AliPMDesdanal.C:18
 AliPMDesdanal.C:19
 AliPMDesdanal.C:20
 AliPMDesdanal.C:21
 AliPMDesdanal.C:22
 AliPMDesdanal.C:23
 AliPMDesdanal.C:24
 AliPMDesdanal.C:25
 AliPMDesdanal.C:26
 AliPMDesdanal.C:27
 AliPMDesdanal.C:28
 AliPMDesdanal.C:29
 AliPMDesdanal.C:30
 AliPMDesdanal.C:31
 AliPMDesdanal.C:32
 AliPMDesdanal.C:33
 AliPMDesdanal.C:34
 AliPMDesdanal.C:35
 AliPMDesdanal.C:36
 AliPMDesdanal.C:37
 AliPMDesdanal.C:38
 AliPMDesdanal.C:39
 AliPMDesdanal.C:40
 AliPMDesdanal.C:41
 AliPMDesdanal.C:42
 AliPMDesdanal.C:43
 AliPMDesdanal.C:44
 AliPMDesdanal.C:45
 AliPMDesdanal.C:46
 AliPMDesdanal.C:47
 AliPMDesdanal.C:48
 AliPMDesdanal.C:49
 AliPMDesdanal.C:50
 AliPMDesdanal.C:51
 AliPMDesdanal.C:52
 AliPMDesdanal.C:53
 AliPMDesdanal.C:54
 AliPMDesdanal.C:55
 AliPMDesdanal.C:56
 AliPMDesdanal.C:57
 AliPMDesdanal.C:58
 AliPMDesdanal.C:59
 AliPMDesdanal.C:60
 AliPMDesdanal.C:61
 AliPMDesdanal.C:62
 AliPMDesdanal.C:63
 AliPMDesdanal.C:64
 AliPMDesdanal.C:65
 AliPMDesdanal.C:66