On Sun, Feb 1, 2009 at 1:55 PM, Frederik Ramm <[email protected]> wrote:
> Hi, > > (f'up set to osmosis-dev) > > Karl Newman wrote: > >> Anyway, the tee can choke things up with all the temporary files. It would >> be nice to be able to share the stored node and ways files between tee >> tasks, but I haven't created that infrastructure yet. >> > > It would be even better to have an extended --bp task that somehow takes a > list of disjoint polygons and uses some kind of point location algorithm to > determine which node belongs to which polygon. The rationale being of course > that with the classic --bp/--tee approach, each node is duplicated n times > and tested against each of the polygons which is a waste of time, especially > with a large input file and many polygons (e.g. split up the US into > counties or so). > > Does the task and stream model that osmosis uses theoretically support > tasks where the number of output streams they create is not fixed, but > dependent on their parameters? So that e.g. a "bp file=a.poly file=b.poly" > (or "bp files=a.poly,b.poly") creates two entity streams and so on? > > Bye > Frederik > What you're asking is possible. The number of input and output pipes has to be known at invocation because the pipes are connected before any tasks are run, but if it's a parameter passed to the task, then the task can report to the pipeline manager how many output pipes it has. The tricky part might be connecting the downstream tasks. It might be confusing because of the stack-based pipeline ordering. Karl
_______________________________________________ talk mailing list [email protected] http://lists.openstreetmap.org/listinfo/talk

