← Back to team overview

kicad-developers team mailing list archive

Re: Doubts about the track list structure and the collinear cleanup code

 

On Sat, Apr 26, 2014 at 01:23:17AM +0200, Tomasz Wlostowski wrote:

> Look at the classes PNS_NODE and PNS_INDEX.

> Nope, they are not. That's why we have R-trees and hashes in the router.

Well, the router needs a *lot* more querying that manual use :D

The question is, are these data structure *always* kept updated in
*every* circumstance? I.e. there exists a reliable index to the track
data and stuff which could be used at any time?

AFAIK there isn't. But at least the track list is kept sorted/grouped
(doesn't really matter since it hasn't skiplist properties) by netname
so for most purposes (except DRC and hit testing) the working set should
be affordable (a ground plane should be the worst case). The router
needs info for other netlists too, so in that case a full scan would be
required. Very very ouch.

-- 
Lorenzo Marcantonio
Logos Srl


References