
Hi Michael,
I don't particularly love the class name.
An istream_iterator iterates over the elements of the stream. A directory_iterator iterates over the contents of a directory. A vector::iterator iterates over the elements of the vector.
A scanline_read_iterator iterates over the scanlines of an image.
One might reasonably expect a scanline_read_iterator to iterate over the elements of a scanline.
I could be wrong and I don't really have a better name aside from maybe scanline_reader::iterator. (reader_t::iterator in your example code)
Also scanline_read_iterator.hpp is in the detail folder. If this class isn't meant for public consumption completely ignore my naming concerns.
Thanks a lot for your insight! I hope I'll some time tonight to address all your points. Christian