Here is the latest version of the GEGL blurb for the article me and my colleagues are writing. Nicolas Robidoux Universite Laurentienne ---------------------------------------------------------------------- GEGL, the GEneric Graphics Library, is an object oriented DAG-based image processing and compositing system. Developed in C, GEGL is expected to bring non-destructive editing, high dynamic range, and improved handling of very large images to the next major release of the GIMP (GNU Image Manipulation Program). GEGL is free and open source and runs on most operating systems. Nohalo, under the name ``sharp,'' is an integral part of GEGL, and its source code (gegl-sampler-sharp.c) can be downloaded from gegl.org. GEGL is ``image type agnostic,'' relying on an external library (babl) to convert all (suitable) image data to and from linear RGBA float buffers. This greatly simplifies the code base, since only one data type is handled by most methods. (This is expected to change in the future.) Intended for interactive use by graphic artists and other real time uses, GEGL is structured so that the task-defining DAGs are fully dynamic. For this reason, GEGL is demand-driven, meaning that output pixel values are computed somewhat independently, each pixel ``pulling'' the needed input data through the DAG, performing needed operations along the way. With this data processing model, implementing a separate gradient module for Nohalo is not really an option, since it would add an extra node to the DAG without allowing the recycling of slopes common to several output pixels. For these reasons, Nohalo is implemented as a ``single stage'' method in GEGL. Basically, the method receives the double precision coordinates of the sampling location within the input image and a pointer to a memory location which receives the computed values. A key aspect of the implementation is that the method requests a pointer to an input pixel within a buffer guaranteed large enough to contain the stencil. A fairly complex machinery allows the buffer to be used for several output pixel computations and fills in missing values according to the abyss policy if necessary. _______________________________________________ Gegl-developer mailing list Gegl-developer@xxxxxxxxxxxxxxxxxxxxxx https://lists.XCF.Berkeley.EDU/mailman/listinfo/gegl-developer