-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 hi, time for a status update, I finished writing the tests for GeglMemoryCache, the first concrete cache implementation. This also means I have a pretty good idea that GeglMemoryCache works :-). This was the first non-obvious class I had to write. Of the stuff I have left to write: I need to write tests for the gegl-buffer.c caching and locking stuff. Non of these features acutally get used unless a cache is attached to the buffer, and now I have a cache to attach to the buffer. I need to write and test: gegl-color-space.c gegl-color-space-imp.c gegl-image.[ch] gegl-swap-cache.[ch] gegl-tile.c, gegl-tile-iterator.c. Of the remaining, gegl-color-space-imp, gegl-color-space, and gegl-swap-cache are non-obvious, though gegl-swap-cache is easy since I have already implemented a cache. The rest is pretty easy. Also, I probably need to get more gegl-buffer subclasses (which are pretty trivial) and modify the apis of GeglBuffer, GeglSampleModel, and GeglColorModel to handle bulk transfers. (this was a oops on my part, bulk transfers should have been there from the begining). Ok. Finally, some thoughts on how this stuff will be used: GeglImage will be abstract. There will be two subclass of GeglImage at the begining. GeglCachedImage and GeglOpImage. GeglCachedImage, backed by a GeglCache will be equivilent to TileManager. Just a store of tiles. GeglOpImage will be backed by a GeglOp and will be the object returned by an op when something requests an image from an op. GeglOpImage will know nothing about a GeglCache. A GeglOp will be resonsible for maintaining and using GeglCaches to cache the results of its image processing operations. As far as gimp integration: If we are going to make an easy transition, then the simplest transition will be to make The TileManager -> GeglImage substitution. This will be nice because code written to deal with GeglImages will be able to deal with GeglCachedImages and GeglOpImages identically. This will make the transistion to Op based image processing easier. Does this sound good to everyone? - -- Dan -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQE/9hC0ad4P1+ZAZk0RAkW2AJ98W1Hal9ZWxEi6Bi6fEXZslqI1GgCfVns5 GL+plRDNUGS8gl56gBEgy1E= =0bM/ -----END PGP SIGNATURE-----