#include "TEveTrackPropagatorEditor.h"
#include "TEveTrackPropagator.h"
#include "TEveGValuators.h"
#include "TEveManager.h"
#include "TVirtualPad.h"
#include "TColor.h"
#include "TGLabel.h"
#include "TG3DLine.h"
#include "TGButton.h"
#include "TGNumberEntry.h"
#include "TGColorSelect.h"
#include "TGComboBox.h"
#include "TGDoubleSlider.h"
#include "TGComboBox.h"
#include "TAttMarkerEditor.h"
ClassImp(TEveTrackPropagatorSubEditor);
TEveTrackPropagatorSubEditor::TEveTrackPropagatorSubEditor(const TGWindow *p):
TGVerticalFrame(p),
fM (0),
fMaxR(0), fMaxZ(0), fMaxOrbits(0), fMaxAng(0), fDelta(0),
fRefsCont(0), fPMFrame(0),
fFitDaughters(0), fFitReferences(0),
fFitDecay(0),
fFitCluster2Ds(0), fFitLineSegments(0),
fRnrDaughters(0), fRnrReferences(0),
fRnrDecay(0), fRnrCluster2Ds(0),
fRnrFV(0),
fPMAtt(0), fFVAtt(0),
fProjTrackBreaking(0), fRnrPTBMarkers(0), fPTBAtt(0)
{
Int_t labelW = 51;
fMaxR = new TEveGValuator(this, "Max R:", 90, 0);
fMaxR->SetLabelWidth(labelW);
fMaxR->SetNELength(6);
fMaxR->Build();
fMaxR->SetLimits(0.1, TEveTrackPropagator::fgEditorMaxR, 101, TGNumberFormat::kNESRealOne);
fMaxR->SetToolTip("Maximum radius to which the tracks will be drawn.");
fMaxR->Connect("ValueSet(Double_t)", "TEveTrackPropagatorSubEditor", this, "DoMaxR()");
AddFrame(fMaxR, new TGLayoutHints(kLHintsTop, 1, 1, 1, 1));
fMaxZ = new TEveGValuator(this, "Max Z:", 90, 0);
fMaxZ->SetLabelWidth(labelW);
fMaxZ->SetNELength(6);
fMaxZ->Build();
fMaxZ->SetLimits(0.1, TEveTrackPropagator::fgEditorMaxZ, 101, TGNumberFormat::kNESRealOne);
fMaxZ->SetToolTip("Maximum z-coordinate to which the tracks will be drawn.");
fMaxZ->Connect("ValueSet(Double_t)", "TEveTrackPropagatorSubEditor", this, "DoMaxZ()");
AddFrame(fMaxZ, new TGLayoutHints(kLHintsTop, 1, 1, 1, 1));
fMaxOrbits = new TEveGValuator(this, "Orbits:", 90, 0);
fMaxOrbits->SetLabelWidth(labelW);
fMaxOrbits->SetNELength(6);
fMaxOrbits->Build();
fMaxOrbits->SetLimits(0.1, 10, 101, TGNumberFormat::kNESRealOne);
fMaxOrbits->SetToolTip("Maximal angular path of tracks' orbits (1 ~ 2Pi).");
fMaxOrbits->Connect("ValueSet(Double_t)", "TEveTrackPropagatorSubEditor", this, "DoMaxOrbits()");
AddFrame(fMaxOrbits, new TGLayoutHints(kLHintsTop, 1, 1, 1, 1));
fMaxAng = new TEveGValuator(this, "Angle:", 90, 0);
fMaxAng->SetLabelWidth(labelW);
fMaxAng->SetNELength(6);
fMaxAng->Build();
fMaxAng->SetLimits(1, 160, 81, TGNumberFormat::kNESRealOne);
fMaxAng->SetToolTip("Maximal angular step between two helix points.");
fMaxAng->Connect("ValueSet(Double_t)", "TEveTrackPropagatorSubEditor", this, "DoMaxAng()");
AddFrame(fMaxAng, new TGLayoutHints(kLHintsTop, 1, 1, 1, 1));
fDelta = new TEveGValuator(this, "Delta:", 90, 0);
fDelta->SetLabelWidth(labelW);
fDelta->SetNELength(6);
fDelta->Build();
fDelta->SetLimits(0.001, 10, 101, TGNumberFormat::kNESRealThree);
fDelta->SetToolTip("Maximal error at the mid-point of the line connecting to helix points.");
fDelta->Connect("ValueSet(Double_t)", "TEveTrackPropagatorSubEditor", this, "DoDelta()");
AddFrame(fDelta, new TGLayoutHints(kLHintsTop, 1, 1, 1, 1));
}
void TEveTrackPropagatorSubEditor::CreateRefsContainer(TGVerticalFrame* p)
{
fRefsCont = new TGCompositeFrame(p, 80, 20, kVerticalFrame);
fPMFrame = new TGVerticalFrame(fRefsCont);
{
TGGroupFrame* fitPM = new TGGroupFrame(fPMFrame, "PathMarks:", kLHintsTop | kLHintsCenterX);
fitPM->SetTitlePos(TGGroupFrame::kLeft);
fPMFrame->AddFrame( fitPM, new TGLayoutHints(kLHintsTop | kLHintsCenterX | kLHintsExpandX, 3, 3, 3, 3));
TGMatrixLayout *ml = new TGMatrixLayout(fitPM, 0,1,6);
fitPM->SetLayoutManager(ml);
fFitDaughters = new TGCheckButton(fitPM, "Fit Daughters", TEvePathMark::kDaughter);
fFitReferences = new TGCheckButton(fitPM, "Fit Refs", TEvePathMark::kReference);
fFitDecay = new TGCheckButton(fitPM, "Fit Decay", TEvePathMark::kDecay);
fFitCluster2Ds = new TGCheckButton(fitPM, "Fit 2D Clusters", TEvePathMark::kCluster2D);
fFitLineSegments = new TGCheckButton(fitPM, "Fit Line Segments", TEvePathMark::kLineSegment);
fitPM->AddFrame(fFitDaughters);
fitPM->AddFrame(fFitReferences);
fitPM->AddFrame(fFitDecay);
fitPM->AddFrame(fFitCluster2Ds);
fitPM->AddFrame(fFitLineSegments);
fFitDecay ->Connect("Clicked()","TEveTrackPropagatorSubEditor", this, "DoFitPM()");
fFitReferences ->Connect("Clicked()","TEveTrackPropagatorSubEditor", this, "DoFitPM()");
fFitDaughters ->Connect("Clicked()","TEveTrackPropagatorSubEditor", this, "DoFitPM()");
fFitCluster2Ds ->Connect("Clicked()","TEveTrackPropagatorSubEditor", this, "DoFitPM()");
fFitLineSegments->Connect("Clicked()","TEveTrackPropagatorSubEditor", this, "DoFitPM()");
}
{
TGGroupFrame* rnrPM = new TGGroupFrame(fPMFrame, "PathMarks:", kLHintsTop | kLHintsCenterX);
rnrPM->SetTitlePos(TGGroupFrame::kLeft);
fPMFrame->AddFrame( rnrPM, new TGLayoutHints(kLHintsTop | kLHintsCenterX | kLHintsExpandX, 3, 3, 3, 3));
TGMatrixLayout *ml = new TGMatrixLayout(rnrPM, 0, 1, 6);
rnrPM->SetLayoutManager(ml);
fRnrDaughters = new TGCheckButton(rnrPM, "Rnr Daughters", TEvePathMark::kDaughter);
fRnrReferences = new TGCheckButton(rnrPM, "Rnr Refs", TEvePathMark::kReference);
fRnrDecay = new TGCheckButton(rnrPM, "Rnr Decay", TEvePathMark::kDecay);
fRnrCluster2Ds = new TGCheckButton(rnrPM, "Rnr 2D Clusters", TEvePathMark::kCluster2D);
rnrPM->AddFrame(fRnrDaughters);
rnrPM->AddFrame(fRnrReferences);
rnrPM->AddFrame(fRnrDecay);
rnrPM->AddFrame(fRnrCluster2Ds);
fRnrDecay ->Connect("Clicked()","TEveTrackPropagatorSubEditor", this, "DoRnrPM()");
fRnrReferences->Connect("Clicked()","TEveTrackPropagatorSubEditor", this, "DoRnrPM()");
fRnrDaughters ->Connect("Clicked()","TEveTrackPropagatorSubEditor", this, "DoRnrPM()");
fRnrCluster2Ds->Connect("Clicked()","TEveTrackPropagatorSubEditor", this, "DoRnrPM()");
fRefsCont->AddFrame(fPMFrame, new TGLayoutHints(kLHintsTop, 1, 1, 1, 1));
}
{
fPMAtt = new TAttMarkerEditor(fRefsCont);
TGFrameElement *el = (TGFrameElement*) fPMAtt->GetList()->First();
TGFrame *f = el->fFrame; fPMAtt->RemoveFrame(f);
f->DestroyWindow(); delete f;
fRefsCont->AddFrame(fPMAtt, new TGLayoutHints(kLHintsTop, 1, 1, 3, 1));
}
{
TGCompositeFrame *vf = new TGCompositeFrame
(fRefsCont, 145, 10, kHorizontalFrame | kLHintsExpandX | kFixedWidth | kOwnBackground);
vf->AddFrame(new TGLabel(vf, "FirstVertex"),
new TGLayoutHints(kLHintsLeft, 1, 1, 0, 0));
vf->AddFrame(new TGHorizontal3DLine(vf),
new TGLayoutHints(kLHintsExpandX, 5, 5, 7, 5));
fRefsCont->AddFrame(vf, new TGLayoutHints(kLHintsTop, 0, 0, 4, 0));
fRnrFV = new TGCheckButton(fRefsCont, "Rnr");
fRnrFV->Connect("Clicked()","TEveTrackPropagatorSubEditor", this, "DoRnrFV()");
fRefsCont->AddFrame(fRnrFV, new TGLayoutHints(kLHintsTop, 5, 1, 2, 0));
{
fFVAtt = new TAttMarkerEditor(fRefsCont);
TGFrameElement *el = (TGFrameElement*) fFVAtt->GetList()->First();
TGFrame *f = el->fFrame; fFVAtt->RemoveFrame(f);
f->DestroyWindow(); delete f;
fRefsCont->AddFrame(fFVAtt, new TGLayoutHints(kLHintsTop, 1, 1, 3, 1));
}
}
{
TGCompositeFrame *vf = new TGCompositeFrame
(fRefsCont, 145, 10, kHorizontalFrame | kLHintsExpandX | kFixedWidth | kOwnBackground);
vf->AddFrame(new TGLabel(vf, "BreakPoints"),
new TGLayoutHints(kLHintsLeft, 1, 1, 0, 0));
vf->AddFrame(new TGHorizontal3DLine(vf),
new TGLayoutHints(kLHintsExpandX, 5, 5, 7, 5));
fRefsCont->AddFrame(vf, new TGLayoutHints(kLHintsTop, 0, 0, 4, 0));
{
UInt_t labelW = 40;
UInt_t labelH = 20;
TGHorizontalFrame* hf = new TGHorizontalFrame(fRefsCont);
TGCompositeFrame *labfr = new TGHorizontalFrame(hf, labelW, labelH, kFixedSize);
TGLabel* label = new TGLabel(labfr, "Mode:");
labfr->AddFrame(label, new TGLayoutHints(kLHintsLeft | kLHintsBottom));
hf->AddFrame(labfr, new TGLayoutHints(kLHintsLeft));
fProjTrackBreaking = new TGComboBox(hf);
fProjTrackBreaking->AddEntry("Break tracks", TEveTrackPropagator::kPTB_Break);
fProjTrackBreaking->AddEntry("First point position", TEveTrackPropagator::kPTB_UseFirstPointPos);
fProjTrackBreaking->AddEntry("Last point position", TEveTrackPropagator::kPTB_UseLastPointPos);
fProjTrackBreaking->Connect("Selected(Int_t)", "TEveTrackPropagatorSubEditor", this, "DoModePTB(UChar_t)");
fProjTrackBreaking->Resize(140, labelH);
hf->AddFrame(fProjTrackBreaking, new TGLayoutHints(kLHintsLeft, 0,0,2,0));
fRefsCont->AddFrame(hf, new TGLayoutHints(kLHintsTop, 4, 1, 1, 1));
}
fRnrPTBMarkers = new TGCheckButton(fRefsCont, "Rnr");
fRnrPTBMarkers->Connect("Clicked()","TEveTrackPropagatorSubEditor", this, "DoRnrPTB()");
fRefsCont->AddFrame(fRnrPTBMarkers, new TGLayoutHints(kLHintsTop, 5, 1, 2, 0));
{
fPTBAtt = new TAttMarkerEditor(fRefsCont);
TGFrameElement *el = (TGFrameElement*) fPTBAtt->GetList()->First();
TGFrame *f = el->fFrame; fPTBAtt->RemoveFrame(f);
f->DestroyWindow(); delete f;
fRefsCont->AddFrame(fPTBAtt, new TGLayoutHints(kLHintsTop, 1, 1, 3, 1));
}
}
p->AddFrame(fRefsCont, new TGLayoutHints(kLHintsTop| kLHintsExpandX));
}
void TEveTrackPropagatorSubEditor::SetModel(TEveTrackPropagator* m)
{
fM = m;
fMaxR->SetValue(fM->fMaxR);
fMaxZ->SetValue(fM->fMaxZ);
fMaxOrbits->SetValue(fM->fMaxOrbs);
fMaxAng->SetValue(fM->GetMaxAng());
fDelta->SetValue(fM->GetDelta());
if(fM->fEditPathMarks)
{
ShowFrame(fPMFrame);
fRnrDaughters->SetState(fM->fRnrDaughters ? kButtonDown : kButtonUp);
fRnrReferences->SetState(fM->fRnrReferences ? kButtonDown : kButtonUp);
fRnrDecay->SetState(fM->fRnrDecay ? kButtonDown : kButtonUp);
fRnrCluster2Ds->SetState(fM->fRnrCluster2Ds ? kButtonDown : kButtonUp);
fFitDaughters->SetState(fM->fFitDaughters ? kButtonDown : kButtonUp);
fFitReferences->SetState(fM->fFitReferences ? kButtonDown : kButtonUp);
fFitDecay->SetState(fM->fFitDecay ? kButtonDown : kButtonUp);
fFitCluster2Ds->SetState(fM->fFitCluster2Ds ? kButtonDown : kButtonUp);
fFitLineSegments->SetState(fM->fFitLineSegments ? kButtonDown : kButtonUp);
fPMAtt->SetModel(&fM->fPMAtt);
}
else
{
fRefsCont->HideFrame(fPMFrame);
}
fRnrFV->SetState(fM->fRnrFV ? kButtonDown : kButtonUp);
fFVAtt->SetModel(&fM->fFVAtt);
fProjTrackBreaking->Select(fM->fProjTrackBreaking, kFALSE);
fRnrPTBMarkers->SetState(fM->fRnrPTBMarkers ? kButtonDown : kButtonUp);
fPTBAtt->SetModel(&fM->fPTBAtt);
}
void TEveTrackPropagatorSubEditor::Changed()
{
Emit("Changed()");
}
void TEveTrackPropagatorSubEditor::DoMaxR()
{
fM->SetMaxR(fMaxR->GetValue());
Changed();
}
void TEveTrackPropagatorSubEditor::DoMaxZ()
{
fM->SetMaxZ(fMaxZ->GetValue());
Changed();
}
void TEveTrackPropagatorSubEditor::DoMaxOrbits()
{
fM->SetMaxOrbs(fMaxOrbits->GetValue());
Changed();
}
void TEveTrackPropagatorSubEditor::DoMaxAng()
{
fM->SetMaxAng(fMaxAng->GetValue());
Changed();
}
void TEveTrackPropagatorSubEditor::DoDelta()
{
fM->SetDelta(fDelta->GetValue());
Changed();
}
void TEveTrackPropagatorSubEditor::DoFitPM()
{
TGButton* b = (TGButton *) gTQSender;
TEvePathMark::EType_e type = TEvePathMark::EType_e(b->WidgetId());
Bool_t on = b->IsOn();
switch(type)
{
case TEvePathMark::kDaughter:
fM->SetFitDaughters(on);
break;
case TEvePathMark::kReference:
fM->SetFitReferences(on);
break;
case TEvePathMark::kDecay:
fM->SetFitDecay(on);
break;
case TEvePathMark::kCluster2D:
fM->SetFitCluster2Ds(on);
break;
case TEvePathMark::kLineSegment:
fM->SetFitLineSegments(on);
break;
default:
break;
}
Changed();
}
void TEveTrackPropagatorSubEditor::DoRnrPM()
{
TGButton * b = (TGButton *) gTQSender;
TEvePathMark::EType_e type = TEvePathMark::EType_e(b->WidgetId());
Bool_t on = b->IsOn();
switch(type){
case TEvePathMark::kDaughter:
fM->SetRnrDaughters(on);
break;
case TEvePathMark::kReference:
fM->SetRnrReferences(on);
break;
case TEvePathMark::kDecay:
fM->SetRnrDecay(on);
break;
case TEvePathMark::kCluster2D:
fM->SetRnrCluster2Ds(on);
break;
default:
break;
}
Changed();
}
void TEveTrackPropagatorSubEditor::DoRnrFV()
{
fM->SetRnrFV(fRnrFV->IsOn());
Changed();
}
void TEveTrackPropagatorSubEditor::DoModePTB(UChar_t mode)
{
fM->SetProjTrackBreaking(mode);
Changed();
}
void TEveTrackPropagatorSubEditor::DoRnrPTB()
{
fM->SetRnrPTBMarkers(fRnrPTBMarkers->IsOn());
Changed();
}
ClassImp(TEveTrackPropagatorEditor);
TEveTrackPropagatorEditor::TEveTrackPropagatorEditor(const TGWindow *p,
Int_t width, Int_t height,
UInt_t options, Pixel_t back) :
TGedFrame(p, width, height, options | kVerticalFrame, back),
fM(0),
fRSSubEditor(0)
{
MakeTitle("RenderStyle");
fRSSubEditor = new TEveTrackPropagatorSubEditor(this);
fRSSubEditor->Connect("Changed()", "TEveTrackPropagatorEditor", this, "Update()");
AddFrame(fRSSubEditor, new TGLayoutHints(kLHintsTop | kLHintsExpandX, 2, 0,0,0));
TGVerticalFrame* refsFrame = CreateEditorTabSubFrame("Refs");
{
TGCompositeFrame *cf = new TGCompositeFrame
(refsFrame, 145, 10, kHorizontalFrame | kLHintsExpandX | kFixedWidth | kOwnBackground);
cf->AddFrame(new TGLabel(cf, "PathMarks"),
new TGLayoutHints(kLHintsLeft, 1, 1, 0, 0));
cf->AddFrame(new TGHorizontal3DLine(cf),
new TGLayoutHints(kLHintsExpandX, 5, 5, 7, 7));
refsFrame->AddFrame(cf, new TGLayoutHints(kLHintsTop, 0, 0, 2, 0));
}
fRSSubEditor->CreateRefsContainer(refsFrame);
fRSSubEditor->fPMAtt->SetGedEditor((TGedEditor*)gEve->GetEditor());
fRSSubEditor->fFVAtt->SetGedEditor((TGedEditor*)gEve->GetEditor());
fRSSubEditor->Connect("Changed()", "TEveTrackPropagatorEditor", this, "Update()");
}
void TEveTrackPropagatorEditor::SetModel(TObject* obj)
{
fM = dynamic_cast<TEveTrackPropagator*>(obj);
fRSSubEditor->SetModel(fM);
}
TEveTrackPropagatorEditor.cxx:1 TEveTrackPropagatorEditor.cxx:2 TEveTrackPropagatorEditor.cxx:3 TEveTrackPropagatorEditor.cxx:4 TEveTrackPropagatorEditor.cxx:5 TEveTrackPropagatorEditor.cxx:6 TEveTrackPropagatorEditor.cxx:7 TEveTrackPropagatorEditor.cxx:8 TEveTrackPropagatorEditor.cxx:9 TEveTrackPropagatorEditor.cxx:10 TEveTrackPropagatorEditor.cxx:11 TEveTrackPropagatorEditor.cxx:12 TEveTrackPropagatorEditor.cxx:13 TEveTrackPropagatorEditor.cxx:14 TEveTrackPropagatorEditor.cxx:15 TEveTrackPropagatorEditor.cxx:16 TEveTrackPropagatorEditor.cxx:17 TEveTrackPropagatorEditor.cxx:18 TEveTrackPropagatorEditor.cxx:19 TEveTrackPropagatorEditor.cxx:20 TEveTrackPropagatorEditor.cxx:21 TEveTrackPropagatorEditor.cxx:22 TEveTrackPropagatorEditor.cxx:23 TEveTrackPropagatorEditor.cxx:24 TEveTrackPropagatorEditor.cxx:25 TEveTrackPropagatorEditor.cxx:26 TEveTrackPropagatorEditor.cxx:27 TEveTrackPropagatorEditor.cxx:28 TEveTrackPropagatorEditor.cxx:29 TEveTrackPropagatorEditor.cxx:30 TEveTrackPropagatorEditor.cxx:31 TEveTrackPropagatorEditor.cxx:32 TEveTrackPropagatorEditor.cxx:33 TEveTrackPropagatorEditor.cxx:34 TEveTrackPropagatorEditor.cxx:35 TEveTrackPropagatorEditor.cxx:36 TEveTrackPropagatorEditor.cxx:37 TEveTrackPropagatorEditor.cxx:38 TEveTrackPropagatorEditor.cxx:39 TEveTrackPropagatorEditor.cxx:40 TEveTrackPropagatorEditor.cxx:41 TEveTrackPropagatorEditor.cxx:42 TEveTrackPropagatorEditor.cxx:43 TEveTrackPropagatorEditor.cxx:44 TEveTrackPropagatorEditor.cxx:45 TEveTrackPropagatorEditor.cxx:46 TEveTrackPropagatorEditor.cxx:47 TEveTrackPropagatorEditor.cxx:48 TEveTrackPropagatorEditor.cxx:49 TEveTrackPropagatorEditor.cxx:50 TEveTrackPropagatorEditor.cxx:51 TEveTrackPropagatorEditor.cxx:52 TEveTrackPropagatorEditor.cxx:53 TEveTrackPropagatorEditor.cxx:54 TEveTrackPropagatorEditor.cxx:55 TEveTrackPropagatorEditor.cxx:56 TEveTrackPropagatorEditor.cxx:57 TEveTrackPropagatorEditor.cxx:58 TEveTrackPropagatorEditor.cxx:59 TEveTrackPropagatorEditor.cxx:60 TEveTrackPropagatorEditor.cxx:61 TEveTrackPropagatorEditor.cxx:62 TEveTrackPropagatorEditor.cxx:63 TEveTrackPropagatorEditor.cxx:64 TEveTrackPropagatorEditor.cxx:65 TEveTrackPropagatorEditor.cxx:66 TEveTrackPropagatorEditor.cxx:67 TEveTrackPropagatorEditor.cxx:68 TEveTrackPropagatorEditor.cxx:69 TEveTrackPropagatorEditor.cxx:70 TEveTrackPropagatorEditor.cxx:71 TEveTrackPropagatorEditor.cxx:72 TEveTrackPropagatorEditor.cxx:73 TEveTrackPropagatorEditor.cxx:74 TEveTrackPropagatorEditor.cxx:75 TEveTrackPropagatorEditor.cxx:76 TEveTrackPropagatorEditor.cxx:77 TEveTrackPropagatorEditor.cxx:78 TEveTrackPropagatorEditor.cxx:79 TEveTrackPropagatorEditor.cxx:80 TEveTrackPropagatorEditor.cxx:81 TEveTrackPropagatorEditor.cxx:82 TEveTrackPropagatorEditor.cxx:83 TEveTrackPropagatorEditor.cxx:84 TEveTrackPropagatorEditor.cxx:85 TEveTrackPropagatorEditor.cxx:86 TEveTrackPropagatorEditor.cxx:87 TEveTrackPropagatorEditor.cxx:88 TEveTrackPropagatorEditor.cxx:89 TEveTrackPropagatorEditor.cxx:90 TEveTrackPropagatorEditor.cxx:91 TEveTrackPropagatorEditor.cxx:92 TEveTrackPropagatorEditor.cxx:93 TEveTrackPropagatorEditor.cxx:94 TEveTrackPropagatorEditor.cxx:95 TEveTrackPropagatorEditor.cxx:96 TEveTrackPropagatorEditor.cxx:97 TEveTrackPropagatorEditor.cxx:98 TEveTrackPropagatorEditor.cxx:99 TEveTrackPropagatorEditor.cxx:100 TEveTrackPropagatorEditor.cxx:101 TEveTrackPropagatorEditor.cxx:102 TEveTrackPropagatorEditor.cxx:103 TEveTrackPropagatorEditor.cxx:104 TEveTrackPropagatorEditor.cxx:105 TEveTrackPropagatorEditor.cxx:106 TEveTrackPropagatorEditor.cxx:107 TEveTrackPropagatorEditor.cxx:108 TEveTrackPropagatorEditor.cxx:109 TEveTrackPropagatorEditor.cxx:110 TEveTrackPropagatorEditor.cxx:111 TEveTrackPropagatorEditor.cxx:112 TEveTrackPropagatorEditor.cxx:113 TEveTrackPropagatorEditor.cxx:114 TEveTrackPropagatorEditor.cxx:115 TEveTrackPropagatorEditor.cxx:116 TEveTrackPropagatorEditor.cxx:117 TEveTrackPropagatorEditor.cxx:118 TEveTrackPropagatorEditor.cxx:119 TEveTrackPropagatorEditor.cxx:120 TEveTrackPropagatorEditor.cxx:121 TEveTrackPropagatorEditor.cxx:122 TEveTrackPropagatorEditor.cxx:123 TEveTrackPropagatorEditor.cxx:124 TEveTrackPropagatorEditor.cxx:125 TEveTrackPropagatorEditor.cxx:126 TEveTrackPropagatorEditor.cxx:127 TEveTrackPropagatorEditor.cxx:128 TEveTrackPropagatorEditor.cxx:129 TEveTrackPropagatorEditor.cxx:130 TEveTrackPropagatorEditor.cxx:131 TEveTrackPropagatorEditor.cxx:132 TEveTrackPropagatorEditor.cxx:133 TEveTrackPropagatorEditor.cxx:134 TEveTrackPropagatorEditor.cxx:135 TEveTrackPropagatorEditor.cxx:136 TEveTrackPropagatorEditor.cxx:137 TEveTrackPropagatorEditor.cxx:138 TEveTrackPropagatorEditor.cxx:139 TEveTrackPropagatorEditor.cxx:140 TEveTrackPropagatorEditor.cxx:141 TEveTrackPropagatorEditor.cxx:142 TEveTrackPropagatorEditor.cxx:143 TEveTrackPropagatorEditor.cxx:144 TEveTrackPropagatorEditor.cxx:145 TEveTrackPropagatorEditor.cxx:146 TEveTrackPropagatorEditor.cxx:147 TEveTrackPropagatorEditor.cxx:148 TEveTrackPropagatorEditor.cxx:149 TEveTrackPropagatorEditor.cxx:150 TEveTrackPropagatorEditor.cxx:151 TEveTrackPropagatorEditor.cxx:152 TEveTrackPropagatorEditor.cxx:153 TEveTrackPropagatorEditor.cxx:154 TEveTrackPropagatorEditor.cxx:155 TEveTrackPropagatorEditor.cxx:156 TEveTrackPropagatorEditor.cxx:157 TEveTrackPropagatorEditor.cxx:158 TEveTrackPropagatorEditor.cxx:159 TEveTrackPropagatorEditor.cxx:160 TEveTrackPropagatorEditor.cxx:161 TEveTrackPropagatorEditor.cxx:162 TEveTrackPropagatorEditor.cxx:163 TEveTrackPropagatorEditor.cxx:164 TEveTrackPropagatorEditor.cxx:165 TEveTrackPropagatorEditor.cxx:166 TEveTrackPropagatorEditor.cxx:167 TEveTrackPropagatorEditor.cxx:168 TEveTrackPropagatorEditor.cxx:169 TEveTrackPropagatorEditor.cxx:170 TEveTrackPropagatorEditor.cxx:171 TEveTrackPropagatorEditor.cxx:172 TEveTrackPropagatorEditor.cxx:173 TEveTrackPropagatorEditor.cxx:174 TEveTrackPropagatorEditor.cxx:175 TEveTrackPropagatorEditor.cxx:176 TEveTrackPropagatorEditor.cxx:177 TEveTrackPropagatorEditor.cxx:178 TEveTrackPropagatorEditor.cxx:179 TEveTrackPropagatorEditor.cxx:180 TEveTrackPropagatorEditor.cxx:181 TEveTrackPropagatorEditor.cxx:182 TEveTrackPropagatorEditor.cxx:183 TEveTrackPropagatorEditor.cxx:184 TEveTrackPropagatorEditor.cxx:185 TEveTrackPropagatorEditor.cxx:186 TEveTrackPropagatorEditor.cxx:187 TEveTrackPropagatorEditor.cxx:188 TEveTrackPropagatorEditor.cxx:189 TEveTrackPropagatorEditor.cxx:190 TEveTrackPropagatorEditor.cxx:191 TEveTrackPropagatorEditor.cxx:192 TEveTrackPropagatorEditor.cxx:193 TEveTrackPropagatorEditor.cxx:194 TEveTrackPropagatorEditor.cxx:195 TEveTrackPropagatorEditor.cxx:196 TEveTrackPropagatorEditor.cxx:197 TEveTrackPropagatorEditor.cxx:198 TEveTrackPropagatorEditor.cxx:199 TEveTrackPropagatorEditor.cxx:200 TEveTrackPropagatorEditor.cxx:201 TEveTrackPropagatorEditor.cxx:202 TEveTrackPropagatorEditor.cxx:203 TEveTrackPropagatorEditor.cxx:204 TEveTrackPropagatorEditor.cxx:205 TEveTrackPropagatorEditor.cxx:206 TEveTrackPropagatorEditor.cxx:207 TEveTrackPropagatorEditor.cxx:208 TEveTrackPropagatorEditor.cxx:209 TEveTrackPropagatorEditor.cxx:210 TEveTrackPropagatorEditor.cxx:211 TEveTrackPropagatorEditor.cxx:212 TEveTrackPropagatorEditor.cxx:213 TEveTrackPropagatorEditor.cxx:214 TEveTrackPropagatorEditor.cxx:215 TEveTrackPropagatorEditor.cxx:216 TEveTrackPropagatorEditor.cxx:217 TEveTrackPropagatorEditor.cxx:218 TEveTrackPropagatorEditor.cxx:219 TEveTrackPropagatorEditor.cxx:220 TEveTrackPropagatorEditor.cxx:221 TEveTrackPropagatorEditor.cxx:222 TEveTrackPropagatorEditor.cxx:223 TEveTrackPropagatorEditor.cxx:224 TEveTrackPropagatorEditor.cxx:225 TEveTrackPropagatorEditor.cxx:226 TEveTrackPropagatorEditor.cxx:227 TEveTrackPropagatorEditor.cxx:228 TEveTrackPropagatorEditor.cxx:229 TEveTrackPropagatorEditor.cxx:230 TEveTrackPropagatorEditor.cxx:231 TEveTrackPropagatorEditor.cxx:232 TEveTrackPropagatorEditor.cxx:233 TEveTrackPropagatorEditor.cxx:234 TEveTrackPropagatorEditor.cxx:235 TEveTrackPropagatorEditor.cxx:236 TEveTrackPropagatorEditor.cxx:237 TEveTrackPropagatorEditor.cxx:238 TEveTrackPropagatorEditor.cxx:239 TEveTrackPropagatorEditor.cxx:240 TEveTrackPropagatorEditor.cxx:241 TEveTrackPropagatorEditor.cxx:242 TEveTrackPropagatorEditor.cxx:243 TEveTrackPropagatorEditor.cxx:244 TEveTrackPropagatorEditor.cxx:245 TEveTrackPropagatorEditor.cxx:246 TEveTrackPropagatorEditor.cxx:247 TEveTrackPropagatorEditor.cxx:248 TEveTrackPropagatorEditor.cxx:249 TEveTrackPropagatorEditor.cxx:250 TEveTrackPropagatorEditor.cxx:251 TEveTrackPropagatorEditor.cxx:252 TEveTrackPropagatorEditor.cxx:253 TEveTrackPropagatorEditor.cxx:254 TEveTrackPropagatorEditor.cxx:255 TEveTrackPropagatorEditor.cxx:256 TEveTrackPropagatorEditor.cxx:257 TEveTrackPropagatorEditor.cxx:258 TEveTrackPropagatorEditor.cxx:259 TEveTrackPropagatorEditor.cxx:260 TEveTrackPropagatorEditor.cxx:261 TEveTrackPropagatorEditor.cxx:262 TEveTrackPropagatorEditor.cxx:263 TEveTrackPropagatorEditor.cxx:264 TEveTrackPropagatorEditor.cxx:265 TEveTrackPropagatorEditor.cxx:266 TEveTrackPropagatorEditor.cxx:267 TEveTrackPropagatorEditor.cxx:268 TEveTrackPropagatorEditor.cxx:269 TEveTrackPropagatorEditor.cxx:270 TEveTrackPropagatorEditor.cxx:271 TEveTrackPropagatorEditor.cxx:272 TEveTrackPropagatorEditor.cxx:273 TEveTrackPropagatorEditor.cxx:274 TEveTrackPropagatorEditor.cxx:275 TEveTrackPropagatorEditor.cxx:276 TEveTrackPropagatorEditor.cxx:277 TEveTrackPropagatorEditor.cxx:278 TEveTrackPropagatorEditor.cxx:279 TEveTrackPropagatorEditor.cxx:280 TEveTrackPropagatorEditor.cxx:281 TEveTrackPropagatorEditor.cxx:282 TEveTrackPropagatorEditor.cxx:283 TEveTrackPropagatorEditor.cxx:284 TEveTrackPropagatorEditor.cxx:285 TEveTrackPropagatorEditor.cxx:286 TEveTrackPropagatorEditor.cxx:287 TEveTrackPropagatorEditor.cxx:288 TEveTrackPropagatorEditor.cxx:289 TEveTrackPropagatorEditor.cxx:290 TEveTrackPropagatorEditor.cxx:291 TEveTrackPropagatorEditor.cxx:292 TEveTrackPropagatorEditor.cxx:293 TEveTrackPropagatorEditor.cxx:294 TEveTrackPropagatorEditor.cxx:295 TEveTrackPropagatorEditor.cxx:296 TEveTrackPropagatorEditor.cxx:297 TEveTrackPropagatorEditor.cxx:298 TEveTrackPropagatorEditor.cxx:299 TEveTrackPropagatorEditor.cxx:300 TEveTrackPropagatorEditor.cxx:301 TEveTrackPropagatorEditor.cxx:302 TEveTrackPropagatorEditor.cxx:303 TEveTrackPropagatorEditor.cxx:304 TEveTrackPropagatorEditor.cxx:305 TEveTrackPropagatorEditor.cxx:306 TEveTrackPropagatorEditor.cxx:307 TEveTrackPropagatorEditor.cxx:308 TEveTrackPropagatorEditor.cxx:309 TEveTrackPropagatorEditor.cxx:310 TEveTrackPropagatorEditor.cxx:311 TEveTrackPropagatorEditor.cxx:312 TEveTrackPropagatorEditor.cxx:313 TEveTrackPropagatorEditor.cxx:314 TEveTrackPropagatorEditor.cxx:315 TEveTrackPropagatorEditor.cxx:316 TEveTrackPropagatorEditor.cxx:317 TEveTrackPropagatorEditor.cxx:318 TEveTrackPropagatorEditor.cxx:319 TEveTrackPropagatorEditor.cxx:320 TEveTrackPropagatorEditor.cxx:321 TEveTrackPropagatorEditor.cxx:322 TEveTrackPropagatorEditor.cxx:323 TEveTrackPropagatorEditor.cxx:324 TEveTrackPropagatorEditor.cxx:325 TEveTrackPropagatorEditor.cxx:326 TEveTrackPropagatorEditor.cxx:327 TEveTrackPropagatorEditor.cxx:328 TEveTrackPropagatorEditor.cxx:329 TEveTrackPropagatorEditor.cxx:330 TEveTrackPropagatorEditor.cxx:331 TEveTrackPropagatorEditor.cxx:332 TEveTrackPropagatorEditor.cxx:333 TEveTrackPropagatorEditor.cxx:334 TEveTrackPropagatorEditor.cxx:335 TEveTrackPropagatorEditor.cxx:336 TEveTrackPropagatorEditor.cxx:337 TEveTrackPropagatorEditor.cxx:338 TEveTrackPropagatorEditor.cxx:339 TEveTrackPropagatorEditor.cxx:340 TEveTrackPropagatorEditor.cxx:341 TEveTrackPropagatorEditor.cxx:342 TEveTrackPropagatorEditor.cxx:343 TEveTrackPropagatorEditor.cxx:344 TEveTrackPropagatorEditor.cxx:345 TEveTrackPropagatorEditor.cxx:346 TEveTrackPropagatorEditor.cxx:347 TEveTrackPropagatorEditor.cxx:348 TEveTrackPropagatorEditor.cxx:349 TEveTrackPropagatorEditor.cxx:350 TEveTrackPropagatorEditor.cxx:351 TEveTrackPropagatorEditor.cxx:352 TEveTrackPropagatorEditor.cxx:353 TEveTrackPropagatorEditor.cxx:354 TEveTrackPropagatorEditor.cxx:355 TEveTrackPropagatorEditor.cxx:356 TEveTrackPropagatorEditor.cxx:357 TEveTrackPropagatorEditor.cxx:358 TEveTrackPropagatorEditor.cxx:359 TEveTrackPropagatorEditor.cxx:360 TEveTrackPropagatorEditor.cxx:361 TEveTrackPropagatorEditor.cxx:362 TEveTrackPropagatorEditor.cxx:363 TEveTrackPropagatorEditor.cxx:364 TEveTrackPropagatorEditor.cxx:365 TEveTrackPropagatorEditor.cxx:366 TEveTrackPropagatorEditor.cxx:367 TEveTrackPropagatorEditor.cxx:368 TEveTrackPropagatorEditor.cxx:369 TEveTrackPropagatorEditor.cxx:370 TEveTrackPropagatorEditor.cxx:371 TEveTrackPropagatorEditor.cxx:372 TEveTrackPropagatorEditor.cxx:373 TEveTrackPropagatorEditor.cxx:374 TEveTrackPropagatorEditor.cxx:375 TEveTrackPropagatorEditor.cxx:376 TEveTrackPropagatorEditor.cxx:377 TEveTrackPropagatorEditor.cxx:378 TEveTrackPropagatorEditor.cxx:379 TEveTrackPropagatorEditor.cxx:380 TEveTrackPropagatorEditor.cxx:381 TEveTrackPropagatorEditor.cxx:382 TEveTrackPropagatorEditor.cxx:383 TEveTrackPropagatorEditor.cxx:384 TEveTrackPropagatorEditor.cxx:385 TEveTrackPropagatorEditor.cxx:386 TEveTrackPropagatorEditor.cxx:387 TEveTrackPropagatorEditor.cxx:388 TEveTrackPropagatorEditor.cxx:389 TEveTrackPropagatorEditor.cxx:390 TEveTrackPropagatorEditor.cxx:391 TEveTrackPropagatorEditor.cxx:392 TEveTrackPropagatorEditor.cxx:393 TEveTrackPropagatorEditor.cxx:394 TEveTrackPropagatorEditor.cxx:395 TEveTrackPropagatorEditor.cxx:396 TEveTrackPropagatorEditor.cxx:397 TEveTrackPropagatorEditor.cxx:398 TEveTrackPropagatorEditor.cxx:399 TEveTrackPropagatorEditor.cxx:400 TEveTrackPropagatorEditor.cxx:401 TEveTrackPropagatorEditor.cxx:402 TEveTrackPropagatorEditor.cxx:403 TEveTrackPropagatorEditor.cxx:404 TEveTrackPropagatorEditor.cxx:405 TEveTrackPropagatorEditor.cxx:406 TEveTrackPropagatorEditor.cxx:407 TEveTrackPropagatorEditor.cxx:408 TEveTrackPropagatorEditor.cxx:409 TEveTrackPropagatorEditor.cxx:410 TEveTrackPropagatorEditor.cxx:411 TEveTrackPropagatorEditor.cxx:412 TEveTrackPropagatorEditor.cxx:413 TEveTrackPropagatorEditor.cxx:414 TEveTrackPropagatorEditor.cxx:415 TEveTrackPropagatorEditor.cxx:416 TEveTrackPropagatorEditor.cxx:417 TEveTrackPropagatorEditor.cxx:418 TEveTrackPropagatorEditor.cxx:419 TEveTrackPropagatorEditor.cxx:420 TEveTrackPropagatorEditor.cxx:421 TEveTrackPropagatorEditor.cxx:422 TEveTrackPropagatorEditor.cxx:423 TEveTrackPropagatorEditor.cxx:424 TEveTrackPropagatorEditor.cxx:425 TEveTrackPropagatorEditor.cxx:426 TEveTrackPropagatorEditor.cxx:427 TEveTrackPropagatorEditor.cxx:428 TEveTrackPropagatorEditor.cxx:429 TEveTrackPropagatorEditor.cxx:430 TEveTrackPropagatorEditor.cxx:431 TEveTrackPropagatorEditor.cxx:432 TEveTrackPropagatorEditor.cxx:433 TEveTrackPropagatorEditor.cxx:434 TEveTrackPropagatorEditor.cxx:435 TEveTrackPropagatorEditor.cxx:436 TEveTrackPropagatorEditor.cxx:437 TEveTrackPropagatorEditor.cxx:438 TEveTrackPropagatorEditor.cxx:439 TEveTrackPropagatorEditor.cxx:440 TEveTrackPropagatorEditor.cxx:441 TEveTrackPropagatorEditor.cxx:442 TEveTrackPropagatorEditor.cxx:443 TEveTrackPropagatorEditor.cxx:444 TEveTrackPropagatorEditor.cxx:445 TEveTrackPropagatorEditor.cxx:446 TEveTrackPropagatorEditor.cxx:447 TEveTrackPropagatorEditor.cxx:448 TEveTrackPropagatorEditor.cxx:449 TEveTrackPropagatorEditor.cxx:450 TEveTrackPropagatorEditor.cxx:451 TEveTrackPropagatorEditor.cxx:452 TEveTrackPropagatorEditor.cxx:453 TEveTrackPropagatorEditor.cxx:454 TEveTrackPropagatorEditor.cxx:455 TEveTrackPropagatorEditor.cxx:456 TEveTrackPropagatorEditor.cxx:457 TEveTrackPropagatorEditor.cxx:458 TEveTrackPropagatorEditor.cxx:459 TEveTrackPropagatorEditor.cxx:460 TEveTrackPropagatorEditor.cxx:461 TEveTrackPropagatorEditor.cxx:462 TEveTrackPropagatorEditor.cxx:463 TEveTrackPropagatorEditor.cxx:464 TEveTrackPropagatorEditor.cxx:465 TEveTrackPropagatorEditor.cxx:466 TEveTrackPropagatorEditor.cxx:467 TEveTrackPropagatorEditor.cxx:468 TEveTrackPropagatorEditor.cxx:469 TEveTrackPropagatorEditor.cxx:470 TEveTrackPropagatorEditor.cxx:471 TEveTrackPropagatorEditor.cxx:472 TEveTrackPropagatorEditor.cxx:473 TEveTrackPropagatorEditor.cxx:474 TEveTrackPropagatorEditor.cxx:475 TEveTrackPropagatorEditor.cxx:476 TEveTrackPropagatorEditor.cxx:477 TEveTrackPropagatorEditor.cxx:478 TEveTrackPropagatorEditor.cxx:479 TEveTrackPropagatorEditor.cxx:480 TEveTrackPropagatorEditor.cxx:481 TEveTrackPropagatorEditor.cxx:482 TEveTrackPropagatorEditor.cxx:483 TEveTrackPropagatorEditor.cxx:484 TEveTrackPropagatorEditor.cxx:485 TEveTrackPropagatorEditor.cxx:486 TEveTrackPropagatorEditor.cxx:487