]>
Commit | Line | Data |
---|---|---|
caaf90d2 | 1 | void trd_friend_tracks(TEveElement *cont = 0) |
af13c843 | 2 | { |
66c3c96b | 3 | |
4 | // Link data containers | |
5 | AliESDfriend *eventESDfriend = 0x0; | |
6 | if(!(eventESDfriend = AliEveEventManager::AssertESDfriend())){ | |
7 | Warning("trd_friend_tracks", "AliESDfriend not found"); | |
8 | return 0x0; | |
af13c843 | 9 | } |
66c3c96b | 10 | |
af13c843 | 11 | AliESDEvent* esd = AliEveEventManager::AssertESD(); |
66c3c96b | 12 | |
af13c843 | 13 | AliEveEventManager::AssertGeometry(); |
af13c843 | 14 | |
794d4a46 | 15 | AliTRDReconstructor *reco = new AliTRDReconstructor(); |
16 | reco->SetOption("!nn"); | |
af13c843 | 17 | |
caaf90d2 | 18 | AliEveTRDTrackList *tracks = new AliEveTRDTrackList("TRD Tracks"); |
a4197d2e | 19 | for (Int_t n=0; n<esd->GetNumberOfTracks(); n++){ |
66c3c96b | 20 | AliESDtrack* esdTrack = esd->GetTrack(n); |
af13c843 | 21 | AliESDfriendTrack *friendTrack = eventESDfriend->GetTrack(n); |
66c3c96b | 22 | |
af13c843 | 23 | TObject *cal = 0x0; |
24 | Int_t ical = 0; | |
66c3c96b | 25 | while(cal = friendTrack->GetCalibObject(ical++)){ |
26 | if(strcmp(cal->IsA()->GetName(), "AliTRDtrackV1") != 0) continue; | |
27 | AliTRDtrackV1 *trackObj = dynamic_cast<AliTRDtrackV1 *>(cal); | |
794d4a46 | 28 | trackObj->SetReconstructor(reco); |
ecbbe371 | 29 | AliEveTRDTrack *trackEve = new AliEveTRDTrack(trackObj); |
30 | tracks->AddElement(trackEve); | |
31 | trackEve->SetESDstatus(esdTrack->GetStatus()); | |
66c3c96b | 32 | } |
33 | } | |
34 | ||
fbc350a3 | 35 | tracks->SetTitle(Form("Tracks %d", tracks->NumChildren())); |
72e13594 | 36 | tracks->StampObjProps(); |
66c3c96b | 37 | gEve->AddElement(tracks, cont); |
ecbbe371 | 38 | |
af13c843 | 39 | gEve->Redraw3D(); |
ecbbe371 | 40 | |
41 | TGLViewer *v = gEve->GetGLViewer(); | |
42 | v->SetCurrentCamera(TGLViewer::kCameraOrthoXOY); | |
43 | ((TGLOrthoCamera&)v->CurrentCamera()).SetEnableRotate(kTRUE); | |
44 | v->UpdateScene(); | |
66c3c96b | 45 | |
caaf90d2 | 46 | return; |
af13c843 | 47 | } |