
Hi, This sounds cool. These seems similar to having iteration on rows of an image. Is it possible to iterate from segment to segment at the same position of each segment. Chris On 10/5/06, Eric Niebler <eric@boost-consulting.com> wrote:
The idea of segmented fusion sequences and algorithms has been discussed here several times, and Joel has made some reference to some earlier work I did in this area. I had done some tests at the time that suggested that a segmented sequences and algorithms could significantly outperform nonsegmented variants Fusion currently uses. Per Joel's suggestion, I went ahead and checked my code into CVS HEAD. All segmented-specific code is quarantined in separate ext_ directories.
What I've just checked in:
- fusion/algorithm/iteration/ext_/for_each_s.hpp for_each_s algorithm that works with segmented sequences
- fusion/algorithm/query/ext_/find_if_s.hpp find_if_s algorithm that works with segmented sequences, and returns segmented iterators
- fusion/sequence/container/ext_/tree.hpp Experimental segmented fusion tree
- fusion/sequence/intrinsic/ext_/segments.hpp The segments() intrinsic for getting a segmented sequences' segments.
- fusion/sequence/view/ext_/multiple_view.hpp Makes a value v appear as a tuple<V,V,V...>(v,v,v...)
- fusion/sequence/view/ext_/segmented_iterator.hpp A generic segmented iterator that remembers its place in the traversal of any segmented sequence.
- fusion/sequence/view/ext_/segmented_iterator_range.hpp Makes iterator_range of segmented_iterators a segmented range.
- fusion/support/ext_/is_segmented.hpp The is_segmented trait.
I've also checked in some basic tests for this stuff, and marked them "explicit" in the test Jamfile so they won't interfere with regular regression testing.
I have not changed *any* standard Fusion files. If we decide to rip this out, it's as simple as nuking all the ext_ directories.
Caveat: this stuff is half-baked. Use at your own risk. The hope is that by checking this in, others will take an interest and help flesh the implementation out, so dig in!
-- Eric Niebler Boost Consulting www.boost-consulting.com _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost