#include <TrkHelixMaker.h>
Inheritance diagram for TrkHelixMaker:
Public Member Functions | |
void | addZValues (TrkRecoTrk &theTrack, double z0, double tanDip, double chi2) |
void | addZValues (TrkRecoTrk &theTrack, double z0, double tanDip, double chi2) |
void | changeDefault (TrkRecoTrk &, PdtPid::PidType) const |
void | changeDefault (TrkRecoTrk &, PdtPid::PidType) const |
virtual void | changeFit (TrkRecoTrk &theTrack) const |
virtual void | changeFit (TrkRecoTrk &theTrack) const |
TrkRecoTrk * | makeTrack (const TrkExchangePar &helix, const double chi2, const TrkContext &, double trackT0) const |
TrkRecoTrk * | makeTrack (const TrkExchangePar &helix, const double chi2, const TrkContext &, double trackT0) const |
bool | setFlipAndDrop (TrkRecoTrk &, bool allowFlips, bool allowDrops) const |
bool | setFlipAndDrop (TrkRecoTrk &, bool allowFlips, bool allowDrops) const |
void | setValidRange (TrkRecoTrk &track, double newLo, double newHi) const |
void | setValidRange (TrkRecoTrk &track, double newLo, double newHi) const |
void | setValues (TrkRecoTrk &theTrack, const TrkExchangePar &newPars, double chi2) const |
void | setValues (TrkRecoTrk &theTrack, const TrkExchangePar &newPars, double chi2) const |
TrkHelixMaker () | |
TrkHelixMaker () | |
virtual | ~TrkHelixMaker () |
virtual | ~TrkHelixMaker () |
Protected Member Functions | |
void | addHypoTo (TrkRecoTrk &, TrkRep *, PdtPid::PidType hypo) const |
void | addHypoTo (TrkRecoTrk &, TrkRep *, PdtPid::PidType hypo) const |
std::pair< TrkRepIter, TrkRepIter > | allReps (const TrkRecoTrk &t) const |
std::pair< TrkRepIter, TrkRepIter > | allReps (const TrkRecoTrk &t) const |
TrkRecoTrk * | createTrack (PdtPid::PidType, long idnum, double t0) const |
TrkRecoTrk * | createTrack (PdtPid::PidType, const TrkContext &, double t0) const |
TrkRecoTrk * | createTrack (PdtPid::PidType, long idnum, double t0) const |
TrkRecoTrk * | createTrack (PdtPid::PidType, const TrkContext &, double t0) const |
TrkRep * | getRep (TrkRecoTrk &, PdtPid::PidType) const |
TrkRep * | getRep (TrkRecoTrk &, PdtPid::PidType) const |
TrkRep * | makeRep (TrkRecoTrk &theTrack) const |
TrkRep * | makeRep (TrkRecoTrk &theTrack) const |
void | repointHypo (TrkRecoTrk &, PdtPid::PidType hypo, PdtPid::PidType fit) const |
void | repointHypo (TrkRecoTrk &, PdtPid::PidType hypo, PdtPid::PidType fit) const |
void | setBField (TrkRecoTrk &, const BField *) const |
void | setBField (TrkRecoTrk &, const BField *) const |
void | setFitNumber (TrkRecoTrk &, PdtPid::PidType, int) const |
void | setFitNumber (TrkRecoTrk &, PdtPid::PidType, int) const |
void | setIdManager (TrkRecoTrk &, TrkIdManager *) const |
void | setIdManager (TrkRecoTrk &, TrkIdManager *) const |
void | setRep (TrkRecoTrk &, TrkRep *) const |
void | setRep (TrkRecoTrk &, TrkRep *) const |
std::pair< TrkRepIter, TrkRepIter > | uniqueReps (const TrkRecoTrk &t) const |
std::pair< TrkRepIter, TrkRepIter > | uniqueReps (const TrkRecoTrk &t) const |
Private Member Functions | |
TrkHelixMaker & | operator= (const TrkHelixMaker &) |
TrkHelixMaker & | operator= (const TrkHelixMaker &) |
TrkHelixMaker (const TrkHelixMaker &) | |
TrkHelixMaker (const TrkHelixMaker &) | |
Friends | |
class | KalFit |
class | KalMiniRX |
class | KalMiniTrkK |
|
00024 {}
|
|
00020 {}
|
|
|
|
|
|
|
|
|
|
|
|
00081 { 00082 trk.addHypoTo(newRep, hypo); 00083 }
|
|
|
|
00031 { 00032 PdtPid::PidType hypo = theTrack.defaultType(); 00033 // const TrkRep* defrep = getRep(theTrack,hypo); 00034 // const TrkHotList *hl = defrep->hotList();//yzhang delete 00035 TrkRep* defrep = getRep(theTrack,hypo); 00036 TrkHotList *hl = defrep->hotList();//yzhang temp 00037 const TrkFit* theFit = theTrack.fitResult(); 00038 if (theFit == 0) { 00039 std::cout<<"ErrMsg(error)" 00040 << "TrkSimpleMaker::addZValues() cannot get helix from invalid fit." 00041 << std::endl; 00042 return; 00043 } 00044 00045 TrkExchangePar oldPar = theFit->helix(0.0); 00046 oldPar.setZ0(z0); 00047 oldPar.setTanDip(tanDip); 00048 /* 00049 std::cout << "#########################before newHelix" << std::endl;//yzhang debug 00050 std::cout << "track--------- " << std::endl;//yzhang debug 00051 theTrack.printAll(std::cout);//track 00052 std::cout << "rep of track--------- " << std::endl;//yzhang debug 00053 getRep(theTrack,hypo)->printAll(std::cout);//track Rep 00054 std::cout << "circle rep's hotlist--------- " << std::endl;//yzhang debug 00055 hl->printAll(std::cout);//Circle Rep 's hotList 00056 */ 00057 00058 TrkHelixRep* newRep = new TrkHelixRep(oldPar, &theTrack, hypo, hl); 00059 /* 00060 std::cout << "#########################after new helix before setRep" << std::endl;//yzhang debug 00061 std::cout << "track--------- " << std::endl;//yzhang debug 00062 theTrack.printAll(std::cout);//track 00063 std::cout << "rep of track--------- " << std::endl;//yzhang debug 00064 std::cout <<newRep->hotList()<<std::endl; 00065 std::cout << "circle hotlist --------- " << std::endl;//yzhang debug 00066 std::cout <<hl<<std::endl; 00067 std::cout << "helix hotlist --------- " << std::endl;//yzhang debug 00068 getRep(theTrack,hypo)->printAll(std::cout);//track Rep 00069 std::cout << "circle rep's hotlist--------- " << std::endl;//yzhang debug 00070 hl->printAll(std::cout);//Circle Rep 's hotList 00071 std::cout << "helix rep's hotlist--------- " << std::endl;//yzhang debug 00072 newRep->hotList()->printAll(std::cout);//Helix Rep's hotList 00073 */ 00074 00075 newRep->fitter().setFittingPar(false, false); 00076 setRep(theTrack, newRep); // theTrack will delete all old Reps 00077 00078 /* 00079 std::cout << "#########################after setRep" << std::endl;//yzhang debug 00080 std::cout << "track--------- " << std::endl;//yzhang debug 00081 theTrack.printAll(std::cout);//track 00082 std::cout << "rep of track--------- " << std::endl;//yzhang debug 00083 getRep(theTrack,hypo)->printAll(std::cout);//track Rep 00084 //std::cout << "circle rep--------- " << std::endl;//yzhang debug 00085 //defrep->printAll(std::cout); 00086 //std::cout << "circle rep's hotlist--------- " << std::endl;//yzhang debug 00087 //hl->printAll(std::cout);//Circle Rep 's hotList 00088 std::cout << "helix rep's hotlist--------- " << std::endl;//yzhang debug 00089 newRep->hotList()->printAll(std::cout);//Helix Rep's hotList 00090 00091 std::cout << "######################### " << std::endl;//yzhang debug 00092 00093 */ 00094 newRep->setChisq(chi2); 00095 if (chi2 > 0.0) newRep->setValid(true); 00096 newRep->setCurrent(false); 00097 }
|
|
|
|
|
|
|
|
00063 { 00064 t.changeDefault(h); 00065 }
|
|
|
|
|
|
|
|
|
|
00057 { 00058 return new TrkRecoTrk(hypo, idnum, t0); 00059 }
|
|
00050 { 00051 return new TrkRecoTrk(hypo, tc, t0); 00052 }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
00069 { 00070 t.repointHypo(h, f); 00071 }
|
|
|
|
00093 { 00094 trk.setBField(field); 00095 }
|
|
|
|
00075 { 00076 t.setFitNumber(hypo, newNum); 00077 }
|
|
|
|
|
|
|
|
00087 { 00088 trk.setIdManager(idMan); 00089 }
|
|
|
|
00037 { 00038 trk.setRep(r); 00039 }
|
|
|
|
|
|
|
|
|
|
|
|
00025 { 00026 return t.uniqueReps(); 00027 }
|
|
|
|
|
|
|