4 #include "AliAODEvent.h"
5 #include "AliAODTrack.h"
6 #include "AliAnalysisTaskPtME.h"
8 // example of an analysis task creating a p_t spectrum
9 // Authors: Panos Cristakoglou, Jan Fiete Grosse-Oetringhaus, Christian Klein-Boesing
11 ClassImp(AliAnalysisTaskPtME)
13 //________________________________________________________________________
14 AliAnalysisTaskPtME::AliAnalysisTaskPtME(const char *name)
15 : AliAnalysisTaskME(name), fHistPt(0)
18 // Define input and output slots here
19 DefineOutput(1, TH1F::Class());
23 //________________________________________________________________________
24 void AliAnalysisTaskPtME::UserCreateOutputObjects()
29 fHistPt = new TH1F("fHistPt", "P_{T} distribution", 15, 0.1, 3.1);
30 fHistPt->GetXaxis()->SetTitle("P_{T} (GeV/c)");
31 fHistPt->GetYaxis()->SetTitle("dN/dP_{T} (c/GeV)");
32 fHistPt->SetMarkerStyle(kFullCircle);
35 //________________________________________________________________________
36 void AliAnalysisTaskPtME::UserExec(Option_t *)
39 // Called for each event
41 for (Int_t jev = 0; jev < 3; jev++) {
42 AliAODEvent* aod = GetEvent(jev);
43 Int_t ntracks = aod->GetNumberOfTracks();
44 printf("Number of tracks %5d %5d\n", jev, ntracks);
46 for (Int_t iTracks = 0; iTracks < aod->GetNumberOfTracks(); iTracks++)
48 AliAODTrack* track = aod->GetTrack(iTracks);
50 Printf("ERROR: Could not receive track %d", iTracks);
54 fHistPt->Fill(track->Pt());
61 //________________________________________________________________________
62 void AliAnalysisTaskPtME::Terminate(Option_t *)
64 // Draw result to the screen
65 // Called once at the end of the query
67 TCanvas *c1 = new TCanvas("AliAnalysisTaskPt","Pt",10,10,510,510);
69 fHistPt->DrawCopy("E");