class TEveTrackPropagator: public TObject, public TEveRefBackPtr

 TEveTrackPropagator

 Holding structure for a number of track rendering parameters.
 Calculates path taking into account the parameters.

 This is decoupled from TEveTrack/TEveTrackList to allow sharing of the
 Propagator among several instances. Back references are kept so the
 tracks can be recreated when the parameters change.

 TEveTrackList has Get/Set methods for RnrStlye. TEveTrackEditor and
 TEveTrackListEditor provide editor access.

Function Members (Methods)

public:
TEveTrackPropagator()
virtual~TEveTrackPropagator()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTEveRefBackPtr::DecRefCount(TEveElement* re)
virtual voidTObject::Delete(Option_t* option = "")
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() const
virtual TObject*TObject::DrawClone(Option_t* option = "") const
virtual voidTObject::Dump() const
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
voidFillPointSet(TEvePointSet* ps) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
Float_tGetDelta() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Bool_tGetEditPathMarks() const
Bool_tGetFitDaughters() const
Bool_tGetFitDecay() const
Bool_tGetFitReferences() const
virtual const char*TObject::GetIconName() const
Float_tGetMagField() const
Float_tGetMaxOrbs() const
Float_tGetMaxR() const
Float_tGetMaxZ() const
Float_tGetMinAng() const
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Bool_tGetRnrDaughters() const
Bool_tGetRnrDecay() const
Bool_tGetRnrFV() const
Bool_tGetRnrReferences() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
voidGoToBounds(TEveVector& p)
Bool_tGoToVertex(TEveVector& v, TEveVector& p)
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTEveRefBackPtr::IncRefCount(TEveElement* re)
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
voidInitTrack(TEveVector& v, TEveVector& p, Float_t beta, Int_t charge)
virtual voidTObject::Inspect() const
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
virtual voidTEveRefCnt::OnZeroRefCount()
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
TMarker&RefFVAtt()
TMarker&RefPMAtt()
voidTObject::ResetBit(UInt_t f)
voidResetTrack()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") const
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetDelta(Float_t x)
virtual voidTObject::SetDrawOption(Option_t* option = "")
static voidTObject::SetDtorOnly(void* obj)
voidSetEditPathMarks(Bool_t x)
voidSetFitDaughters(Bool_t x)
voidSetFitDecay(Bool_t x)
voidSetFitReferences(Bool_t x)
voidSetMagField(Float_t x)
voidSetMaxOrbs(Float_t x)
voidSetMaxR(Float_t x)
voidSetMaxZ(Float_t x)
voidSetMinAng(Float_t x)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetRnrDaughters(Bool_t x)
voidSetRnrDecay(Bool_t x)
voidSetRnrFV(Bool_t x)
voidSetRnrReferences(Bool_t x)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTEveRefBackPtr::UpdateBackPtrItems()
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidHelixToBounds(TEveVector& p)
Bool_tHelixToVertex(TEveVector& v, TEveVector& p)
voidInitHelix()
voidLineToBounds(TEveVector& p)
Bool_tLineToVertex(TEveVector& v)
voidTObject::MakeZombie()
voidRebuildTracks()
voidSetNumOfSteps()
private:
TEveTrackPropagator(const TEveTrackPropagator&)
TEveTrackPropagator&operator=(const TEveTrackPropagator&)

Data Members

public:
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
public:
static Float_tfgDefMagFieldDefault value for constant solenoid magnetic field.
static TEveTrackPropagatorfgDefStyleDefault track render-style.
static const Float_tfgkB2CConstant for conversion of momentum to curvature.
protected:
list<TEveElement*>TEveRefBackPtr::fBackRefs
Int_tfChargeparticle charge
Float_tfDeltaMaximal error at the mid-point of the line connecting to helix points.
Bool_tfEditPathMarksShow widgets for path-mark control in GUI editor.
TMarkerfFVAttMarker attributes for fits vertex.
Bool_tfFitDaughtersPass through daughter creation points when extrapolating a track.
Bool_tfFitDecayPass through decay point when extrapolating a track.
Bool_tfFitReferencesPass through given track-references when extrapolating a track.
TEveTrackPropagator::Helix_tfHhelix
Float_tfMagFieldConstant magnetic field along z in Tesla.
Float_tfMaxOrbsMaximal angular path of tracks' orbits (1 ~ 2Pi).
Float_tfMaxRMax radius for track extrapolation
Float_tfMaxZMax z-coordinate for track extrapolation.
Float_tfMinAngMinimal angular step between two helix points.
Int_tfNcurrent step number;
Int_tfNLastlast step
Int_tfNMaxmax steps
TMarkerfPMAttMarker attributes for rendering of path-marks.
vector<Vertex4D_t>fPointscalculated point
Int_tTEveRefCnt::fRefCount
Bool_tfRnrDaughtersRender daughter path-marks.
Bool_tfRnrDecayRender decay path-marks.
Bool_tfRnrFVRender first vertex.
Bool_tfRnrReferencesRender track-reference path-marks.
TEveTrackPropagator::Vertex4D_tfVcurrent vertex
Float_tfVelocityparticle velocity

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TEveTrackPropagator(const TEveTrackPropagator& )
 Default constructor.
void InitTrack(TEveVector& v, TEveVector& p, Float_t beta, Int_t charge)
 Initializae internal data-members for given particle parameters.
void ResetTrack()
 Reset cache holding particle trajectory.
Bool_t GoToVertex(TEveVector& v, TEveVector& p)
 Propagate particle with momentum p to vertex v.
void GoToBounds(TEveVector& p)
 Propagate particle to bounds.
void SetNumOfSteps()
 Calculate number of steps needed to achieve desired precision.
void HelixToBounds(TEveVector& p)
 Propagate charged particle with momentum p to bounds.
Bool_t HelixToVertex(TEveVector& v, TEveVector& p)
 Propagate charged particle with momentum p to vertex v.
Bool_t LineToVertex(TEveVector& v)
 Propagate neutral particle to vertex v.
void LineToBounds(TEveVector& p)
 Propagatate neutral particle with momentum p to bounds.
void FillPointSet(TEvePointSet* ps) const
 Reset ps and populate it with points in propagation cache.
void RebuildTracks()
 Rebuild all tracks using this render-style.
void SetMagField(Float_t x)
 Set constant magnetic field and rebuild tracks.
void SetMaxR(Float_t x)
 Set maximum radius and rebuild tracks.
void SetMaxZ(Float_t x)
 Set maximum z and rebuild tracks.
void SetMaxOrbs(Float_t x)
 Set maximum number of orbits and rebuild tracks.
void SetMinAng(Float_t x)
 Set minimum step angle and rebuild tracks.
void SetDelta(Float_t x)
 Set maximum error and rebuild tracks.
void SetFitDaughters(Bool_t x)
 Set daughter creation point fitting and rebuild tracks.
void SetFitReferences(Bool_t x)
 Set track-reference fitting and rebuild tracks.
void SetFitDecay(Bool_t x)
 Set decay fitting and rebuild tracks.
void SetRnrDecay(Bool_t x)
 Set decay rendering and rebuild tracks.
void SetRnrDaughters(Bool_t x)
 Set daughter rendering and rebuild tracks.
void SetRnrReferences(Bool_t x)
 Set track-reference rendering and rebuild tracks.
TEveTrackPropagator(const TEveTrackPropagator& )
TEveTrackPropagator& operator=(const TEveTrackPropagator& )
void InitHelix()
virtual ~TEveTrackPropagator()
{}
void SetEditPathMarks(Bool_t x)
{ fEditPathMarks = x; }
void SetRnrFV(Bool_t x)
{ fRnrFV = x; }
Float_t GetMagField()
{ return fMagField; }
Float_t GetMaxR()
{ return fMaxR; }
Float_t GetMaxZ()
{ return fMaxZ; }
Float_t GetMaxOrbs()
{ return fMaxOrbs; }
Float_t GetMinAng()
{ return fMinAng; }
Float_t GetDelta()
{ return fDelta; }
Bool_t GetEditPathMarks()
{ return fEditPathMarks; }
Bool_t GetRnrDaughters()
{ return fRnrDaughters; }
Bool_t GetRnrReferences()
{ return fRnrReferences; }
Bool_t GetRnrDecay()
{ return fRnrDecay; }
Bool_t GetFitDaughters()
{ return fFitDaughters; }
Bool_t GetFitReferences()
{ return fFitReferences; }
Bool_t GetFitDecay()
{ return fFitDecay; }
Bool_t GetRnrFV()
{ return fRnrFV; }
TMarker& RefPMAtt()
{ return fPMAtt; }
TMarker& RefFVAtt()
{ return fFVAtt; }

Last update: root/eve:$Id: TEveTrackPropagator.h 21310 2007-12-10 19:05:45Z matevz $
Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.