[Gegl-developer] status of gegl/image

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



-----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-----


[Index of Archives]     [Yosemite News]     [Yosemite Photos]     [gtk]     [GIMP Users]     [KDE]     [Gimp's Home]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux