The changes are much easier to follow in the individual commits.

* Add an iterator base class: contains information about iteration range, image 
bounds, position, and related functions
* Iterator and ConstIterator inherit from IteratorBase; derived classes contain 
a reference to imagebuf, data proxy, access operations, and operator++
* Add a TiledIterator and TiledConstIterator, which minimize calls to 
ImageBuf::retile during normal iteration
* Use tiled iterators in ImageBuf::get_pixels and IvImage::copy_pixel_channels

You can merge this Pull Request by running:

  git pull https://github.com/btdavis/oiio ibiter

Or you can view, comment on it, or merge it online at:

  https://github.com/OpenImageIO/oiio/pull/393

-- Commit Summary --

* Add IteratorBase
* Make Iterator and ConstIterator use the new base class
* Add unordered iterators to ImageBuf
* Use the unordered iterator in get_pixels and copy_pixel_channels
* Typo in UnorderedIterator
* Add pos() back in to UnorderedIterator
* Rename UnorderedIterator -> TiledIterator
* Fix comments

-- File Changes --

M src/include/imagebuf.h (801)
M src/iv/ivimage.cpp (2)
M src/libOpenImageIO/imagebuf.cpp (2)

-- Patch Links --

  https://github.com/OpenImageIO/oiio/pull/393.patch
  https://github.com/OpenImageIO/oiio/pull/393.diff

---
Reply to this email directly or view it on GitHub:
https://github.com/OpenImageIO/oiio/pull/393
_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to