1 // Import tracks from kinematics-tree / particle-stack.
2 // Preliminary/minimal solution.
4 Reve::TrackList* kine_tracks(Double_t min_pt=0.5, Double_t max_pt=100)
6 AliRunLoader* rl = Alieve::Event::AssertRunLoader();
8 AliStack* stack = rl->Stack();
10 Error("kine_tracks.C", "can not get kinematics.");
14 Reve::TrackList* cont = new Reve::TrackList("Kine Tracks");
15 cont->SetMainColor(Color_t(6));
16 Reve::TrackRnrStyle* rnrStyle = cont->GetRnrStyle();
18 // !!! Watch the '-', apparently different sign convention then for ESD.
19 rnrStyle->SetMagField( - gAlice->Field()->SolenoidField() );
21 gReve->AddRenderElement(cont);
24 Int_t N = stack->GetNtrack();
25 for (Int_t i=0; i<N; ++i) {
26 TParticle* p = stack->Particle(i);
27 Double_t pT = p->Pt();
28 if (pT<min_pt || pT>max_pt) continue;
31 Reve::Track* track = new Reve::Track(p, i, rnrStyle);
32 track->SetName(Form("%s [%d]", p->GetName(), i));
33 gReve->AddRenderElement(cont, track);
36 const Text_t* tooltip = Form("pT ~ (%.2lf, %.2lf), N=%d", min_pt, max_pt, count);
37 cont->SetTitle(tooltip); // Not broadcasted automatically ...