Blame docs/index-static.txt.in

Packit bc1512
GEGL-@GEGL_VERSION@
Packit bc1512
===========
Packit bc1512
Packit bc1512
Packit bc1512
[[gegl]]
Packit bc1512
GEGL
Packit bc1512
----
Packit bc1512
Packit bc1512
image::images/GEGL.png[GEGL]
Packit bc1512
Packit bc1512
*GEGL* (Generic Graphics Library) is a graph based image processing framework.
Packit bc1512
Packit bc1512
GEGL provides infrastructure to do demand based cached non destructive image
Packit bc1512
editing on larger than RAM buffers. Through link:http://gegl.org/babl/[babl]
Packit bc1512
it provides support for a wide range of color models and pixel storage formats
Packit bc1512
for input and output.
Packit bc1512
Packit bc1512
[[features]]
Packit bc1512
Features
Packit bc1512
~~~~~~~~
Packit bc1512
  - Floating point handling and processing and output of larger 8bit, 16bit
Packit bc1512
    integer and 32bit floating point per component buffers larger than RAM.
Packit bc1512
  - C, http://gegl.org/gegl-vala[vala], http://gegl.org/gegl-sharp/[C#],
Packit bc1512
    http://gegl.org/pygegl/[Python] and http://gegl.org/rgegl/[Ruby] interfaces
Packit bc1512
    using a consistent DOM like graph API to manage processing graphs.
Packit bc1512
  - Processing
Packit bc1512
     * Iterative chunk-wise processing.
Packit bc1512
     * Processes subregions and dependencies.
Packit bc1512
     * Subgraph caches to aid performance of non-destructive editing.
Packit bc1512
     * Experimental OpenCL acceleration, with possibility of hybrid cpu/gpu
Packit bc1512
       processing. 
Packit bc1512
  - link:api.html#GeglBuffer[GeglBuffer]
Packit bc1512
     * Storage of all babl supported formats.
Packit bc1512
     * Tiled sparse buffers (larger than RAM images).
Packit bc1512
     * linear buffers (allocated internally or from external allocation.)
Packit bc1512
     * On demand tiled mipmapping.
Packit bc1512
     * inter process shared storage
Packit bc1512
     * External tile-backends (allow wrapping other tiled buffer systems
Packit bc1512
       to use them through the GeglBuffer API).
Packit bc1512
  - Operations
Packit bc1512
      * PNG, JPEG, SVG, EXR, RAW, ffmpeg, v4l and other image sources.
Packit bc1512
      * link:operations.html#cat_render[Pattern renderers]
Packit bc1512
      * link:operations.html#math[Arithmetic operations]
Packit bc1512
      * link_operations.html#porter_duff[porter duff compositing]
Packit bc1512
      * SVG filter modes and full set of compositing ops from SVG-1.2 draft.
Packit bc1512
      * Gaussian blur, bilateral-filter, symmetric nearest neighbour, linear
Packit bc1512
      * blur, unsharp mask, pixelize and more.
Packit bc1512
      * link:operations.html#cat_color[Color correction].
Packit bc1512
      * Text rendering using cairo and http://pango.org/[pango].
Packit bc1512
      * HDR exposure merging and tone mapping operations.
Packit bc1512
      * Most operations operate in
Packit bc1512
        http://en.wikipedia.org/wiki/ScRGB_color_space[scRGB] (using 32bit
Packit bc1512
        floating point/HDR linear light RGBA)
Packit bc1512
  - Bounding box based hit detection.
Packit bc1512
  - XML serialization format (not-finalized)
Packit bc1512
Packit bc1512
News
Packit bc1512
~~~~
Packit bc1512
This website is built at the time of the previous GEGL tarball release,
Packit bc1512
for information about what might change on the way to the next release
Packit bc1512
follow the following news sources:
Packit bc1512
Packit bc1512
http://git.gnome.org/cgit/gegl/log/[Change log]::
Packit bc1512
  For day to day fixes, contributions and changes.
Packit bc1512
http://git.gnome.org/cgit/gegl/tree/NEWS[NEWS]::
Packit bc1512
  The NEWS file for a list of major new features (also contains older NEWS).
Packit bc1512
http://bugzilla.gnome.org/buglist.cgi?product=GEGL&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=UNCONFIRMED&bug_status=NEEDINFO[bugzilla]::
Packit bc1512
 for known and tracked issues with GEGL and perhaps see the 
Packit bc1512
http://blog.gmane.org/gmane.comp.video.gegl.devel?set_blog_all=yes[mail]::
Packit bc1512
  The mailinglist archives for some discussion and announcement.
Packit bc1512
Packit bc1512
Gallery
Packit bc1512
~~~~~~~
Packit bc1512
For examples of what GEGL's rendering engine currently can do look at the
Packit bc1512
link:gallery/index.html[gallery].
Packit bc1512
Packit bc1512
Bugzilla
Packit bc1512
~~~~~~~~
Packit bc1512
The GEGL project uses http://bugzilla.gnome.org/[GNOME Bugzilla], a
Packit bc1512
bug-tracking system that allows us to coordinate bug reports. Bugzilla is also
Packit bc1512
used for enhancement requests and the preferred way to submit patches for GEGL
Packit bc1512
is to open a bug report and attach the patch to it. Bugzilla is also the
Packit bc1512
closest you will find to a roadmap for GEGL.
Packit bc1512
Packit bc1512
Below is a list of links to get you started with Bugzilla:
Packit bc1512
Packit bc1512
  - http://bugzilla.gnome.org/buglist.cgi?product=GEGL&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED[List of Open Bugs]
Packit bc1512
  - http://bugzilla.gnome.org/buglist.cgi?product=GEGL&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_severity=blocker&bug_severity=critical&bug_severity=major&bug_severity=normal&bug_severity=minor&bug_severity=trivial[List of Open Bugs] (excluding enhancement requests)
Packit bc1512
  - http://bugzilla.gnome.org/buglist.cgi?product=GEGL&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=UNCONFIRMED&bug_status=NEEDINFO&bug_severity=enhancement[List of Enhancement Proposals]
Packit bc1512
  - http://bugzilla.gnome.org/reports/weekly-bug-summary.cgi[Bugzilla Weekly Summary]
Packit bc1512
Packit bc1512
Packit bc1512
Community
Packit bc1512
~~~~~~~~~
Packit bc1512
Packit bc1512
You can subscribe to gegl-developer and view the archives
Packit bc1512
http://mail.gnome.org/mailman/listinfo/gegl-developer-list[here]. The GEGL
Packit bc1512
developer list is the appopriate place to ask development questions, and get
Packit bc1512
more information about GEGL development in general. You can email this list at
Packit bc1512
mailto:gegl-developer-list@gnome.org[].
Packit bc1512
Packit bc1512
GEGL development is also discussed in #gegl on GIMPnet (irc.gimp.org).
Packit bc1512
Packit bc1512
Copyright
Packit bc1512
~~~~~~~~~
Packit bc1512
GEGL is free software; you can redistribute it and/or modify it under the terms
Packit bc1512
of the link:LGPL[GNU Lesser General Public License] and link:GPL[GNU General
Packit bc1512
Public License] as published by the Free Software Foundation; either version 3
Packit bc1512
of the Licenses, or (at your option) any later version. The library itself is
Packit bc1512
licensed under LGPL while the sample commandline application and GUI binary
Packit bc1512
gegl is licensed under GPL.
Packit bc1512
Packit bc1512
Contributors
Packit bc1512
~~~~~~~~~~~~
Packit bc1512
Many people have contributed to GEGL
Packit bc1512
http://www.ohloh.net/projects/4349/analyses/latest[over time] the following
Packit bc1512
lists are are ordered chronologically according to when they are mentioned in
Packit bc1512
the ChangeLog.
Packit bc1512
Packit bc1512
include::@top_srcdir@/AUTHORS[]
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Building from source
Packit bc1512
--------------------
Packit bc1512
GEGL and it's dependencies are known to work on Linux based systems, windows
Packit bc1512
with msys/mingw, and probably other platforms.
Packit bc1512
Packit bc1512
Download
Packit bc1512
~~~~~~~~
Packit bc1512
The latest development snapshot, and eventually stable versions of GEGL are
Packit bc1512
available at ftp://ftp.gimp.org/pub/gegl/[].
Packit bc1512
Packit bc1512
The current code under development can be
Packit bc1512
http://git.gnome.org/cgit/gegl/tree[browsed online] and cloned from
Packit bc1512
GNOME git using:
Packit bc1512
Packit bc1512
 $ git clone git://git.gnome.org/babl
Packit bc1512
 $ git clone git://git.gnome.org/gegl
Packit bc1512
Packit bc1512
Dependencies
Packit bc1512
~~~~~~~~~~~~
Packit bc1512
Packit bc1512
GEGL currently builds and works on linux, win32 and OSX most probably also on
Packit bc1512
other systems where glib and gtk+ work.
Packit bc1512
Packit bc1512
  - Core
Packit bc1512
      * glib (including gobject, and gmodule) 2.16 or newer, which provides
Packit bc1512
        inheritance, dynamic modules, common algorithms and data structures
Packit bc1512
        for C programming.
Packit bc1512
      * http://gegl.org/babl/[babl] 0.0.22 or newer (for pixel-format
Packit bc1512
        agnostisism).
Packit bc1512
      * libpng (png load/export ops, and image magick fallback import)
Packit bc1512
      * ruby (only if building from git)
Packit bc1512
  - GUI (sandbox for testing ops and the API)
Packit bc1512
      * GTK+
Packit bc1512
  - Optional dependencies for operations.
Packit bc1512
      * SDL (display op)
Packit bc1512
      * libjpeg (jpg loader op)
Packit bc1512
      * libopenexr (exr loader op)
Packit bc1512
      * http://freedesktop.org/wiki/Software/libopenraw[libopenraw] (raw
Packit bc1512
        loader op)
Packit bc1512
      * cairo, pango (text source op)
Packit bc1512
      * avcodec, avformat (ff-load and experimental ff-save)
Packit bc1512
      * librsvg (svg loader)
Packit bc1512
   - Documentation (this document)
Packit bc1512
      * asciidoc
Packit bc1512
Packit bc1512
Compiling
Packit bc1512
~~~~~~~~~
Packit bc1512
To build GEGL type the following in the toplevel source directory:
Packit bc1512
Packit bc1512
 $ ./configure  # or: ./autogen.sh if building from git
Packit bc1512
 $ make
Packit bc1512
 $ sudo make install
Packit bc1512
Packit bc1512
Packit bc1512
Documentation
Packit bc1512
-------------
Packit bc1512
With GEGL you chain together image processing operations represented by nodes
Packit bc1512
into a graph. GEGL provides such operations for loading and storing images,
Packit bc1512
adjusting colors, filtering in different ways, transforming and compositing images.
Packit bc1512
Packit bc1512
GEGL's programmer/user interface is a Directed Acyclic Graph of nodes. The DAG
Packit bc1512
expresses a processing chain of operations. A DAG, or any node in it, expresses
Packit bc1512
a composited and processed image. It is possible to request rectangular regions
Packit bc1512
in a wide range of pixel formats from any node.
Packit bc1512
Packit bc1512
Development
Packit bc1512
-----------
Packit bc1512
This link:development.html[howto] describes good-to-know things for developing gegl
Packit bc1512
Packit bc1512
Public API
Packit bc1512
~~~~~~~~~~
Packit bc1512
The link:api.html[public API reference] documents the API used for creating
Packit bc1512
things with GEGL, this API does not change much at all and is also the API
Packit bc1512
provided by language bindings. To make the public API available when compiling
Packit bc1512
a .c file add #include <link:gegl.h.html[gegl.h]>, compile and link with the
Packit bc1512
flags provided by pkg-config and you should be all set. When you are
Packit bc1512
comfortable with the public API, or are using GEGL in some project looking at
Packit bc1512
the link:operations.html[Operation reference] might be useful.
Packit bc1512
Packit bc1512
The public API also includes link:api.html#GeglBuffer[GeglBuffer], a flexible
Packit bc1512
tiled and linear raster buffer storage system.
Packit bc1512
Packit bc1512
Bindings
Packit bc1512
^^^^^^^^
Packit bc1512
The bindings for use of GEGL in other programming languages than C are
Packit bc1512
co-hosted with GEGL in GNOME git but are not part of the regular GEGL
Packit bc1512
distribution. The following language bindings are currently available:
Packit bc1512
Packit bc1512
http://gegl.org/gegl-vala[vala], http://gegl.org/gegl-sharp/[C#],
Packit bc1512
http://gegl.org/pygegl/[Python] and http://gegl.org/rgegl/[Ruby].
Packit bc1512
Packit bc1512
Packit bc1512
Hello world
Packit bc1512
^^^^^^^^^^^
Packit bc1512
The following is a small sample GEGL application that animates a zoom on a
Packit bc1512
mandelbrot fractal. compile it with:
Packit bc1512
Packit bc1512
 $ gcc hello-world.c `pkg-config --libs --cflags gegl` -o hello-world
Packit bc1512
Packit bc1512
This example and others can be found in the examples subdir of the GEGL distribution.
Packit bc1512
Packit bc1512
---------------------------
Packit bc1512
sys::[cat @top_srcdir@/examples/hello-world.c]
Packit bc1512
---------------------------
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Operation API
Packit bc1512
~~~~~~~~~~~~~
Packit bc1512
An API to extend the functionality of GEGL with new image processing primitive,
Packit bc1512
file loaders, export formats or similar. 
Packit bc1512
Packit bc1512
Each GEGL operation is defined in a .c file that gets turned into a single
Packit bc1512
shared object that is loaded. Each operation is a subclass of one of the
Packit bc1512
provided base classes:
Packit bc1512
Packit bc1512
link:gegl-operation.h.html[GeglOperation]::
Packit bc1512
    The base operation class, which all the other base classes are derived
Packit bc1512
    from, deriving from this is often quite a bit of work and is encouraged
Packit bc1512
    only when your operation doesn't fit into any of the other categories
Packit bc1512
link:gegl-operation-filter.h.html[GeglOperationFilter]::
Packit bc1512
    The filter base class sets up GeglBuffers for input and output pads
Packit bc1512
Packit bc1512
link:gegl-operation-point-filter.h.html[GeglOperationPointFilter]::
Packit bc1512
    The point-filter base class is for filters where an output pixel only
Packit bc1512
    depends on the color and alpha values of the corresponding input pixel.
Packit bc1512
    This allows you to do the processing on linear buffers, in the future
Packit bc1512
    versions of GEGL operations implemented using the point-filter will get
Packit bc1512
    speed increases due to more intelligent processing possible in the point
Packit bc1512
    filter class
Packit bc1512
Packit bc1512
link:gegl-operation-area-filter.h.html[GeglOperationAreaFilter]::
Packit bc1512
    The AreaFilter base class allows defining operations where the output data
Packit bc1512
    depends on a neighbourhood with an input window that extends beyond the
Packit bc1512
    output window, the information about needed extra pixels in different
Packit bc1512
    directions should be set up in the prepare callback for the operation.
Packit bc1512
Packit bc1512
link:gegl-operation-composer.h.html[GeglOperationComposer]::
Packit bc1512
    Composer operations are operations that take two inputs named 'input' and
Packit bc1512
    'aux' and write their output to the output pad 'output'
Packit bc1512
Packit bc1512
link:gegl-operation-point-composer.h.html[GeglOperationPointComposer]::
Packit bc1512
    A baseclass for composer functions where the output pixels' values depends
Packit bc1512
    only on the values of the single corresponding input and aux pixels.
Packit bc1512
Packit bc1512
link:gegl-operation-source.h.html[GeglOperationSource]::
Packit bc1512
    Operations used as render sources or file loaders, the process method
Packit bc1512
    receives a GeglBuffer to write it's output into
Packit bc1512
Packit bc1512
link:gegl-operation-point-render.h.html[GeglOperationPointRender]::
Packit bc1512
    The point-render base class is a specialized source operation, where the
Packit bc1512
    render is done in small piece to lower the need to do copies. It's dedicated
Packit bc1512
    to operation which may be rendered in pieces, like pattern generation.
Packit bc1512
Packit bc1512
link:gegl-operation-sink.h.html[GeglOperationSink]::
Packit bc1512
    An operation that consumes a GeglBuffer, used for filewriters, display (for
Packit bc1512
    the sdl display node)
Packit bc1512
Packit bc1512
link:gegl-operation-temporal.h.html[GeglOperationTemporal]::
Packit bc1512
    Base class for operations that want access to previous frames in a video
Packit bc1512
    sequence, it contains API to configure the amounts of frames to store as
Packit bc1512
    well as getting a GeglBuffer pointing to any of the previously stored
Packit bc1512
    frames.
Packit bc1512
Packit bc1512
link:gegl-operation-meta.h.html[GeglOperationMeta]::
Packit bc1512
    Used for GEGL operations that are implemented as a sub-graph, at the moment
Packit bc1512
    these are defined as C files but should in the future be possible to
Packit bc1512
    declare as XML instead.
Packit bc1512
Packit bc1512
To create your own operations you should start by looking for one that does
Packit bc1512
approximatly what you already need. Copy it to a new .c source file, and
Packit bc1512
replace the occurences of the filename (operation name in the source.)
Packit bc1512
Packit bc1512
Take a look at link:brightness-contrast.c.html[the brightness contrast
Packit bc1512
operation] for a point operation well sprinkled with comments as a starting point.
Packit bc1512
Packit bc1512
//XML data model
Packit bc1512
//~~~~~~~~~~~~~~
Packit bc1512
//The tree allows clones, making it possible to express any acyclic graph where
Packit bc1512
//the nodes are all of the types: source, filter and composer.
Packit bc1512
//
Packit bc1512
//GEGL can write and reads its data model to and from XML. The XML is chains of
Packit bc1512
//image processing commands, where some chains allow a child chain (the 'over'
Packit bc1512
//operator to implement layers for instance).
Packit bc1512
//
Packit bc1512
//The type of operation associated with a node can be specified either with a
Packit bc1512
//class attribute or by using the operation name as the tag name for the node.
Packit bc1512
//
Packit bc1512
//or documentation on how this XML works, take a look at the sources in the
Packit bc1512
//gallery. And browse the documentation for operations.
Packit bc1512
Packit bc1512
Environment
Packit bc1512
~~~~~~~~~~~
Packit bc1512
Some environment variables can be set to alter how GEGL runs, all of these
Packit bc1512
options are also available as properties on a singleton GObject returned from
Packit bc1512
gegl_config ().
Packit bc1512
Packit bc1512
GEGL_QUALITY::
Packit bc1512
    A value between 0.0 and 1.0 indicating a trade-off between quality and
Packit bc1512
    speed. Defaults to 1.0 (max quality).
Packit bc1512
BABL_TOLERANCE::
Packit bc1512
    The amount of error that babl tolerates, set it to for instance 0.1 to use
Packit bc1512
    some conversions that trade some quality for speed.
Packit bc1512
GEGL_CHUNK_SIZE::
Packit bc1512
    The number of pixels processed simulatnously.
Packit bc1512
GEGL_TILE_SIZE::
Packit bc1512
    The tile size used internally by GEGL, defaults to 128x64
Packit bc1512
GEGL_SWAP::
Packit bc1512
    The directory where temporary swap files are written, if not specified GEGL
Packit bc1512
    will not swap to disk. Be aware that swapping to disk is still experimental
Packit bc1512
    and GEGL is currently not removing the per process swap files.
Packit bc1512
GEGL_CACHE_SIZE::
Packit bc1512
    The size of the tile cache used by GeglBuffer specified in megabytes.
Packit bc1512
GEGL_DEBUG::
Packit bc1512
    set it to "all" to enable all debugging, more specific domains for
Packit bc1512
    debugging information are also available.
Packit bc1512
BABL_STATS::
Packit bc1512
    When set babl will write a html file (/tmp/babl-stats.html) containing a
Packit bc1512
    matrix of used conversions, as well as all existing conversions and which
Packit bc1512
    optimized paths are followed.
Packit bc1512
GEGL_DEBUG_BUFS::
Packit bc1512
    Display tile/buffer leakage statistics.
Packit bc1512
GEGL_DEBUG_RECTS::
Packit bc1512
    Show the results of have/need rect negotiations.
Packit bc1512
GEGL_DEBUG_TIME::
Packit bc1512
    Print a performance instrumentation breakdown of GEGL and it's operations.
Packit bc1512
GEGL_USE_OPENCL:
Packit bc1512
    Enable use of OpenCL processing.
Packit bc1512
Packit bc1512
gegl
Packit bc1512
~~~~
Packit bc1512
GEGL provides a commandline tool called gegl, for working with the XML data
Packit bc1512
model from file, stdin or the commandline. It can display the result of
Packit bc1512
processing the layer tree or save it to file.
Packit bc1512
Packit bc1512
Some examples:
Packit bc1512
Packit bc1512
Render a composition to a PNG file:
Packit bc1512
Packit bc1512
 $ gegl composition.xml -o composition.png
Packit bc1512
Packit bc1512
Invoke gegl like a viewer for gegl compositions:
Packit bc1512
Packit bc1512
 $ gegl -ui -d 5 composition.xml
Packit bc1512
Packit bc1512
Using gegl with png's passing through stdin/stdout piping.
Packit bc1512
Packit bc1512
 $ cat input.png | gegl -o - -x "<gegl>
Packit bc1512
    <tree>
Packit bc1512
      <node class='invert'/>
Packit bc1512
      <node class='scale' x='0.5' y='0.5'/>
Packit bc1512
      <node class='png-load' path='-'/></tree></gegl>" > output.png
Packit bc1512
Packit bc1512
The latest development version is available in the gegl repository in GNOME
Packit bc1512
git.
Packit bc1512
Packit bc1512
gegl usage
Packit bc1512
^^^^^^^^^^
Packit bc1512
The following is the usage information of the gegl binary, this documentation
Packit bc1512
might not be complete.
Packit bc1512
Packit bc1512
-------
Packit bc1512
sys::[bash -c '../bin/gegl -h 2>&1']
Packit bc1512
-------
Packit bc1512
Packit bc1512
Packit bc1512
Appendixes
Packit bc1512
----------
Packit bc1512
Packit bc1512
Operations
Packit bc1512
~~~~~~~~~~
Packit bc1512
Packit bc1512
The main source of documentation as GEGL grows is the
Packit bc1512
link:operations.html[operations reference]. Plug-ins themselves register
Packit bc1512
information about the categories they belong to, what they do, and
Packit bc1512
documentation of the available parameters.
Packit bc1512
Packit bc1512
Glossary
Packit bc1512
~~~~~~~~
Packit bc1512
connection::
Packit bc1512
    A link/pipe routing image flow between operations within the graph goes
Packit bc1512
    from an output pad to an input pad, in graph glossary this might also be
Packit bc1512
    referred to as an edge.
Packit bc1512
DAG::
Packit bc1512
    Directed Acyclic Graph, see graph.
Packit bc1512
graph::
Packit bc1512
    A composition of nodes, the graph is a DAG.
Packit bc1512
node::
Packit bc1512
    The nodes are connected in the graph. A node has an associated operation or
Packit bc1512
    can be constructed graph.
Packit bc1512
operation::
Packit bc1512
    The processing primitive of GEGL, is where the actual image processing
Packit bc1512
    takes place. Operations are plug-ins and provide the actual functionality
Packit bc1512
    of GEGL
Packit bc1512
pad::
Packit bc1512
    The part of a node that exchanges image content. The place where image
Packit bc1512
    "pipes" are used to connect the various operations in the composition.
Packit bc1512
input pad::
Packit bc1512
  consumes image data, might also be seen as an image parameter to the
Packit bc1512
  operation.
Packit bc1512
output pad::
Packit bc1512
  a place where data can be requested, multiple input pads can reference
Packit bc1512
  the same output pad.
Packit bc1512
property::
Packit bc1512
    Properties are what controls the behavior of operations. Through the use of
Packit bc1512
    GParamSpecs properties they are self documenting via introspection.
Packit bc1512
Packit bc1512
Directory overview
Packit bc1512
~~~~~~~~~~~~~~~~~~
Packit bc1512
GEGL dirs
Packit bc1512
^^^^^^^^^
Packit bc1512
Packit bc1512
Directories marked with ⊙ use GNU make extensions to include any .c file
Packit bc1512
dropped into the directory in the build.
Packit bc1512
Packit bc1512
 gegl-dist-root
Packit bc1512
Packit bc1512
Packit bc1512
  ├──gegl               core source of GEGL, library init/deinit,
Packit bc1512
  │   │
Packit bc1512
  │   ├──buffer         contains the implementation of GeglBuffer
Packit bc1512
  │   │                  - sparse (tiled)
Packit bc1512
  │   │                  - recursivly subbuffer extendable
Packit bc1512
  │   │                  - clipping rectangle (defaults to bounds when making
Packit bc1512
  │   │                    subbuffers)
Packit bc1512
  │   │                  - storage in any babl supported pixel format
Packit bc1512
  │   │                  - read/write rectangular region as linear buffer for
Packit bc1512
  │   │                    any babl supported pixel format.
Packit bc1512
  │   ├──graph          graph storage and manipulation code.
Packit bc1512
  │   ├──module         The code to load plug-ins located in a colon seperated
Packit bc1512
  │   │                 list of paths from the environment variable GEGL_PATH
Packit bc1512
  │   ├──operation      The GeglOperation base class, and subclasses that act
Packit bc1512
  │   │                 as baseclasses for implementeting different types of
Packit bc1512
  │   │                 operation plug-ins.
Packit bc1512
  │   ├──process        The code controlling data processing.
Packit bc1512
  │   └──property-types specialized classes/paramspecs for GeglOperation
Packit bc1512
  │                     properties.
Packit bc1512
Packit bc1512
  ├──examples ⊙        hello-world and other example uses of the GEGL API.
Packit bc1512
Packit bc1512
  ├──tests             various tests used to maintain stability when developing
Packit bc1512
  │                    GEGL.
Packit bc1512
Packit bc1512
  ├──operations        Runtime loaded plug-ins for image processing operations.
Packit bc1512
  │   │
Packit bc1512
  │   ├──core ⊙        Basic operations tightly coupled with GEGL.
Packit bc1512
  │   ├──affine        Transforming operations (rotate/scale/translate)
Packit bc1512
  │   ├──generated ⊙   Operations generated from scripts (currently
Packit bc1512
  │   ├──external      Operations with external dependencies.
Packit bc1512
  │   ├──common ⊙      Other operations. 
Packit bc1512
  │   └──workshop ⊙    Works in progress, (you must pass --enable-workshop 
Packit bc1512
  │       │            when configurig to build these by default, you can enter
Packit bc1512
  │       │            the directory manually and type make && sudo make install
Packit bc1512
  │       │            as well.
Packit bc1512
  │       │
Packit bc1512
  │       ├──external  operations in the workshop with external dependencies.
Packit bc1512
  │       └──generated generated operations that are in the workshop.
Packit bc1512
Packit bc1512
Packit bc1512
  ├──docs              The GEGL website (this documentation), built for your
Packit bc1512
  │   │                the corresponding sourcetree with correct documentation
Packit bc1512
  │   │                etc.
Packit bc1512
  │   │
Packit bc1512
  │   └──gallery ⊙     A gallery of sample GEGL compositions, using the
Packit bc1512
  │       │            (not yet stabilized) XML format.
Packit bc1512
  │       │
Packit bc1512
  │       └──data      Image data used by the sample compositions.
Packit bc1512
Packit bc1512
  ├──bin               gegl binary, for processing XML compositions to png files.
Packit bc1512
Packit bc1512
  ├──bindings          bindings for using GEGL from other programming languages
Packit bc1512
  │                    not included in the tarball distribution but exist in
Packit bc1512
  │                    the git repository.
Packit bc1512
Packit bc1512
  └──tools             some small utilities to help the build.
Packit bc1512
Packit bc1512
++++++++
Packit bc1512
Packit bc1512
Table of Contents
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
-->
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
 
Packit bc1512
 
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
Packit bc1512
++++++++