
"Justin Gottschlich" <jgottschlich@runbox.com> wrote in message news:200502220833.j1M8XgX2032369@milliways.osl.iu.edu... | Dear Boost library members - | I'm e-mailing is to ask if there may be interest in a generic tree container | for addition to Boost. My guess is that there probably would be such interrest. | I have written two articles on my tree containers (one published on | gamedev.net) and the second article in the process for publication on | gamedev.net that is currently being reviewed. I have posted both articles on | my site for review (if you're interested in reading them): | | http://nodeka.com/TreePart1.pdf The ad hoc implementation of a tree is not exactly "industrial strength" :-) | http://nodeka.com/TreePart2.pdf One major issue with the design: I don't like that iterators are trees. It must be possible to break the two concepts apart like in tree<T>::level_iterator i = the_tree.level_begin(); tree<T>::recursive_iterator ii = the_tree.recursive_begin(); I do think it would be good to have several iteration strategies over the trees: 1. depth first 2. breadth first 3. on one level (ei, no recursion) For all iterators I would like to be able to say if( i.is_leaf() ). Maybe boost.graph can be used instead of starting from scratch, s.t. we can use a generic algorithm instead of member functions in the tree. br -Thorsten