Hi WanMil,

Date: Fri, 13 Jan 2012 17:03:58 +0100
> From: wmgcnfg@web.de
> To: mkgmap-dev@lists.mkgmap.org.uk
> Subject: Re: [mkgmap-dev] [Patch v3] LocationHook with new Quadtree
>
>
> >
> > >
> > > Also note that admin_level=1 is not used in OSM. So you can remove that
> > > either.
> > Ok, I did not know this. Anyway, admLevel-2 is a bit too confusing in my
> > eyes.
>
> I wonder a bit: You try to remove as much as possible but leave the
> admin_level=1 tag which is definetly never used? In the end the array
> with tags must be well known at any place when mapping the original
> admin_level/postcode to the tags in the array.
>
> I think the array can be removed completely. It seems to confuse more
> than it helps in the LocationHook. It is used in the BoundaryQuadTree
> but it could be easily created just before calling the constructor.

I did not think too much about that. I just found the original HashSet too confusing.
The array was needed in an interims solution, and I used it also for printing debugging info.
The content of the array is no longer performance critical.
I also thought about placing it only in the quadtree source, what do you think about that?


>
> >
> > By the way: I thought very long about the idea of the HashTable mkgmapTags
> > in the trunk version. I guess it was used to allow easy removing of
> > selected admin_levels or postal_code from processing ?
> >
>
> The original idea was that multiple tags might be used to map to the
> mkgmap internal tags. So not only admin_level=2 could map to
> mkgmap:admin_level2. But that was a nice idea which was never used.
> Maybe postal code tagging will require such a n:1 mapping because that
> tagging is not very consistent.

OK, that's understood. Maybe most of the code in LocationHook can
be moved to BoundaryPreparer, but none of it is performance critical.

Ciao,
Gerd