#include "AliEveTrack.h"
+#include "AliESDtrack.h"
+#include "AliAODTrack.h"
+
#include <TROOT.h>
//______________________________________________________________________________
}
//______________________________________________________________________________
-AliEveTrack::AliEveTrack(TParticle* t, Int_t label, TEveTrackPropagator* rs) :
- TEveTrack(t, label, rs)
+AliEveTrack::AliEveTrack(TParticle* t, Int_t label, TEveTrackPropagator* prop) :
+ TEveTrack(t, label, prop)
+{
+ // Constructor.
+}
+
+//______________________________________________________________________________
+AliEveTrack::AliEveTrack(TEveMCTrack* t, TEveTrackPropagator* prop) :
+ TEveTrack(t, prop)
+{
+ // Constructor.
+}
+
+//______________________________________________________________________________
+AliEveTrack::AliEveTrack(TEveRecTrack* t, TEveTrackPropagator* prop) :
+ TEveTrack(t, prop)
{
// Constructor.
}
//______________________________________________________________________________
-AliEveTrack::AliEveTrack(TEveMCTrack* t, TEveTrackPropagator* rs) :
- TEveTrack(t, rs)
+AliEveTrack::AliEveTrack(AliESDtrack* t, TEveTrackPropagator* prop) :
+ TEveTrack()
{
// Constructor.
+
+ Double_t buf[3];
+ t->GetXYZ(buf); fV.Set(buf);
+ t->GetPxPyPz(buf); fP.Set(buf);
+
+ Double_t ep = t->GetP(), mc = t->GetMass();
+ fBeta = ep/TMath::Sqrt(ep*ep + mc*mc);
+ // fPdg = 0; // ??? Use PID ?
+ fCharge= t->GetSign();
+
+ fLabel = t->GetLabel();
+ fIndex = t->GetID();
+ // fStatus = (Int_t) t->GetStatus(); // RRRR Uncomment for root-5.26.
+
+ SetPropagator(prop);
}
//______________________________________________________________________________
-AliEveTrack::AliEveTrack(TEveRecTrack* t, TEveTrackPropagator* rs) :
- TEveTrack(t, rs)
+AliEveTrack::AliEveTrack(AliAODTrack* t, TEveTrackPropagator* prop) :
+ TEveTrack()
{
// Constructor.
+
+ Double_t buf[3];
+
+ t->GetXYZ(buf); fV.Set(buf);
+ t->PxPyPz(buf); fP.Set(buf);
+
+ // fBeta = 0; // Unknown, no mass function
+ // fPdg = 0; // ??? Use PID ?
+ fCharge= t->Charge();
+
+ fLabel = t->GetLabel();
+ fIndex = t->GetID();
+ // fStatus = (Int_t) t->GetStatus(); // RRRR Uncomment for root-5.26.
+
+ SetPropagator(prop);
}
//______________________________________________________________________________
#include <TEveTrack.h>
+class AliESDtrack;
+class AliAODTrack;
+
//______________________________________________________________________________
// Short description of AliEveTrack
//
{
public:
AliEveTrack();
- AliEveTrack(TParticle* t, Int_t label, TEveTrackPropagator* rs);
- AliEveTrack(TEveMCTrack* t, TEveTrackPropagator* rs);
- AliEveTrack(TEveRecTrack* t, TEveTrackPropagator* rs);
+ AliEveTrack(TParticle* t, Int_t label, TEveTrackPropagator* prop=0);
+ AliEveTrack(TEveMCTrack* t, TEveTrackPropagator* prop=0);
+ AliEveTrack(TEveRecTrack* t, TEveTrackPropagator* prop=0);
+ AliEveTrack(AliESDtrack* t, TEveTrackPropagator* prop=0);
+ AliEveTrack(AliAODTrack* t, TEveTrackPropagator* prop=0);
AliEveTrack(const AliEveTrack& t);
virtual ~AliEveTrack();
innerTaken = kTRUE;
}
- Double_t pbuf[3], vbuf[3];
- tp->GetXYZ(vbuf);
- tp->GetPxPyPz(pbuf);
-
- TEveRecTrack rt;
- rt.fLabel = at->GetLabel();
- rt.fIndex = at->GetID();
- rt.fStatus = (Int_t) at->GetStatus();
- rt.fSign = at->GetSign();
- rt.fV.Set(vbuf);
- rt.fP.Set(pbuf);
- Double_t ep = at->GetP(), mc = at->GetMass();
- rt.fBeta = ep/TMath::Sqrt(ep*ep + mc*mc);
-
- AliEveTrack* track = new AliEveTrack(&rt, cont->GetPropagator());
+ AliEveTrack* track = new AliEveTrack(at, cont->GetPropagator());
track->SetAttLineAttMarker(cont);
track->SetName(Form("AliEveTrack %d", at->GetID()));
track->SetElementTitle(esd_track_title(at));