From: Ian Jackson Date: Sun, 9 Jan 2011 01:30:16 +0000 (+0000) Subject: realtime: movpos: debug: print some debugging in movpos_findcomb_bysegs X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ijackson/git?a=commitdiff_plain;h=1ac22dcc3dbae1b10fa5c56a605cde746e884b1c;p=trains.git realtime: movpos: debug: print some debugging in movpos_findcomb_bysegs --- diff --git a/hostside/movpos.c b/hostside/movpos.c index 93dddab..224202c 100644 --- a/hostside/movpos.c +++ b/hostside/movpos.c @@ -1019,11 +1019,24 @@ ErrorCode movpos_findcomb_bysegs(Segment *back, Segment *move, Segment *fwd, int tcost, bestcost=INT_MAX; const SegPosCombInfo *pci; + DPRINTF(movpos,eval, "movpos_findcomb_bysegs %s-%s-%s <-%s\n", + back ? back->i->pname : "*", move->i->pname, + fwd ? fwd ->i->pname : "*", movpos_pname(move, startpoint)); + for (tcomb=0, pci=movei->poscombs; tcombn_poscombs; tcomb++, pci++) { + /* these next assignments may generate segments[-1] but we don't + * care because that won't compare equal to back or fwd */ Segment *tback= &segments[pci->link[1].next]; Segment *tfwd= &segments[pci->link[0].next]; + + DPRINTF(movpos,intern, "movpos_findcomb_bysegs ... %s : %s-%s-%s\n", + movpos_pname(move, tcomb), + SOMEP(pci->link[1].next) ? tback->i->pname : "#", + move->i->pname, + SOMEP(pci->link[0].next) ? tfwd->i->pname : "#"); + if (back && !(back==tback || back==tfwd)) continue; if (fwd && !(fwd ==tback || fwd ==tfwd)) continue; @@ -1037,6 +1050,11 @@ ErrorCode movpos_findcomb_bysegs(Segment *back, Segment *move, Segment *fwd, bestcomb= tcomb; bestcost= tcost; } + DPRINTF(movpos,entry, "movpos_findcomb_bysegs %s..%s..%s <-%s => %s/%s\n", + back ? back->i->pname : "-", move->i->pname, + fwd ? fwd ->i->pname : "-", movpos_pname(move, startpoint), + move->i->pname, movpos_pname(move,bestcomb)); + if (chosen_r) *chosen_r= bestcomb; return bestcost==INT_MAX ? EC_MovFeatRouteNotFound :