ROOT logo
//
// Reading macro for the track reference tree
// minimum stuff
//
void AliPMDTrackRefRead()
{

  AliRunLoader*    runLoader =  AliRunLoader::Open("galice.root");

  if (!runLoader)
    { 
      printf("Could not open galice.root");
    }

  runLoader->LoadTrackRefs("READ");

  Int_t nEvents = runLoader->GetNumberOfEvents();

  printf("Total number of Events = %d\n",nEvents);


  FILE *fpw = fopen("trackref.dat","w");



  TClonesArray *arrayTR = 0x0;
  arrayTR = new TClonesArray("AliTrackReference");

  TTree *treeTR;


  AliStack *stack = runLoader->Stack();


  // Starts the event loop

  for (Int_t iev = 0; iev < nEvents; iev++)
    {
      runLoader->GetEvent(iev);
      treeTR = runLoader->TreeTR();
      treeTR->SetBranchAddress("TrackReferences",  &arrayTR);
      
      Int_t nEntries = treeTR->GetEntries();
      
      printf("Total number of Entries = %d \n",nEntries);
      
      for (Int_t i = 0; i < nEntries; i++)
	{
	  Int_t trRead  = treeTR->GetEntry(i);
	  if (trRead <= 0) continue;
	  Int_t nTrackRefs = arrayTR->GetEntries();
	  
	  for (Int_t j = 0; j < nTrackRefs; j++)
	    {
	      AliTrackReference* trackRef = static_cast<AliTrackReference*>(arrayTR->At(j));
	      if (!trackRef) continue;
	      
	      
	      if (trackRef->DetectorId() != AliTrackReference::kPMD) continue;
	      
	      //TParticle* mpart = 0;
	      
	      //Int_t trackno = trackRef->GetTrack();
	      Int_t trackno = trackRef->Label();
	      
	      //printf("Track number = %d \n",trackno);
	      if (iev == 0) fprintf(fpw,"Track number = %d \n",trackno);
	      
	      
	      //mpart = stack->Particle(trackno);

	      //Int_t   MPID   = mpart->GetFirstMother();
	      //Int_t   M2PID  = mpart->GetSecondMother();

	    }
	  
	}
    }
  
  
  
  
  
}
 AliPMDTrackRefRead.C:1
 AliPMDTrackRefRead.C:2
 AliPMDTrackRefRead.C:3
 AliPMDTrackRefRead.C:4
 AliPMDTrackRefRead.C:5
 AliPMDTrackRefRead.C:6
 AliPMDTrackRefRead.C:7
 AliPMDTrackRefRead.C:8
 AliPMDTrackRefRead.C:9
 AliPMDTrackRefRead.C:10
 AliPMDTrackRefRead.C:11
 AliPMDTrackRefRead.C:12
 AliPMDTrackRefRead.C:13
 AliPMDTrackRefRead.C:14
 AliPMDTrackRefRead.C:15
 AliPMDTrackRefRead.C:16
 AliPMDTrackRefRead.C:17
 AliPMDTrackRefRead.C:18
 AliPMDTrackRefRead.C:19
 AliPMDTrackRefRead.C:20
 AliPMDTrackRefRead.C:21
 AliPMDTrackRefRead.C:22
 AliPMDTrackRefRead.C:23
 AliPMDTrackRefRead.C:24
 AliPMDTrackRefRead.C:25
 AliPMDTrackRefRead.C:26
 AliPMDTrackRefRead.C:27
 AliPMDTrackRefRead.C:28
 AliPMDTrackRefRead.C:29
 AliPMDTrackRefRead.C:30
 AliPMDTrackRefRead.C:31
 AliPMDTrackRefRead.C:32
 AliPMDTrackRefRead.C:33
 AliPMDTrackRefRead.C:34
 AliPMDTrackRefRead.C:35
 AliPMDTrackRefRead.C:36
 AliPMDTrackRefRead.C:37
 AliPMDTrackRefRead.C:38
 AliPMDTrackRefRead.C:39
 AliPMDTrackRefRead.C:40
 AliPMDTrackRefRead.C:41
 AliPMDTrackRefRead.C:42
 AliPMDTrackRefRead.C:43
 AliPMDTrackRefRead.C:44
 AliPMDTrackRefRead.C:45
 AliPMDTrackRefRead.C:46
 AliPMDTrackRefRead.C:47
 AliPMDTrackRefRead.C:48
 AliPMDTrackRefRead.C:49
 AliPMDTrackRefRead.C:50
 AliPMDTrackRefRead.C:51
 AliPMDTrackRefRead.C:52
 AliPMDTrackRefRead.C:53
 AliPMDTrackRefRead.C:54
 AliPMDTrackRefRead.C:55
 AliPMDTrackRefRead.C:56
 AliPMDTrackRefRead.C:57
 AliPMDTrackRefRead.C:58
 AliPMDTrackRefRead.C:59
 AliPMDTrackRefRead.C:60
 AliPMDTrackRefRead.C:61
 AliPMDTrackRefRead.C:62
 AliPMDTrackRefRead.C:63
 AliPMDTrackRefRead.C:64
 AliPMDTrackRefRead.C:65
 AliPMDTrackRefRead.C:66
 AliPMDTrackRefRead.C:67
 AliPMDTrackRefRead.C:68
 AliPMDTrackRefRead.C:69
 AliPMDTrackRefRead.C:70
 AliPMDTrackRefRead.C:71
 AliPMDTrackRefRead.C:72
 AliPMDTrackRefRead.C:73
 AliPMDTrackRefRead.C:74
 AliPMDTrackRefRead.C:75
 AliPMDTrackRefRead.C:76
 AliPMDTrackRefRead.C:77
 AliPMDTrackRefRead.C:78
 AliPMDTrackRefRead.C:79
 AliPMDTrackRefRead.C:80
 AliPMDTrackRefRead.C:81
 AliPMDTrackRefRead.C:82
 AliPMDTrackRefRead.C:83
 AliPMDTrackRefRead.C:84
 AliPMDTrackRefRead.C:85