1 #if !defined(__CINT__) || defined(__MAKECINT__)
7 #include "AliAODEvent.h"
8 #include "AliAODHeader.h"
9 #include "AliAODVertex.h"
10 #include "AliAODTrack.h"
11 #include "AliAODCluster.h"
15 void ReadAOD(const char *fileName = "AliAOD.root") {
17 // open input file and get the TTree
18 TFile inFile(fileName, "READ");
19 TTree *aodTree = (TTree*)inFile.Get("AOD");
21 AliAODEvent *aod = (AliAODEvent*)aodTree->GetUserInfo()->FindObject("AliAODEvent");
22 TIter next(aod->GetList());
24 while((el=(TNamed*)next()))
25 aodTree->SetBranchAddress(el->GetName(),aod->GetList()->GetObjectRef(el));
28 Int_t nEvents = aodTree->GetEntries();
29 for (Int_t nEv = 0; nEv < nEvents; nEv++) {
30 cout << "Event: " << nEv+1 << "/" << nEvents << endl;
33 aodTree->GetEvent(nEv);
39 aod->GetHeader()->Print();
42 Int_t nTracks = aod->GetNTracks();
43 for (Int_t nTr = 0; nTr < nTracks; nTr++) {
45 AliAODTrack *tr = aod->GetTrack(nTr);
48 cout << nTr+1 << "/" << nTracks << ": track pt: " << tr->Pt();
49 if (tr->GetProdVertex()) {
50 cout << ", vertex z of this track: " << tr->GetProdVertex()->GetZ();
56 Int_t nVtxs = aod->GetNVertices();
57 for (Int_t nVtx = 0; nVtx < nVtxs; nVtx++) {
60 cout << nVtx+1 << "/" << nVtxs << ": vertex z position: " << aod->GetVertex(nVtx)->GetZ() << endl;