1. 19 Aug, 2018 1 commit
    • Ell's avatar
      buffer: add gegl_tile_backend_command(); pre-0.4.10 compatibility · 30047e65
      Ell authored
      Tile backends currently assert in their command handlers that the
      input command is between 0 and GEGL_TILE_LAST_COMMAND (this is true
      for the built-in backends, but we can assume it's also true for
      custom backends.)  This prevents us from adding new tile commands
      without breaking the ABI.
      Instead, add a new gegl_tile_backend_command() function, which acts
      as a default command handler for tile backends, and to which their
      handlers should forward unhandled commands (this function currently
      simply performs the range check for the command -- however, against
      the GEGL_TILE_LAST_COMMAND value of the runtime GEGL -- and returns
      NULL; we can add differet default behaviors for different commands
      as necessary.)
      In order to remain backward compatible with tile backends compiled
      against older versions of GEGL, which still contain the above
      assertion, we replace the subclass's command handler with a thunk
      upon construction, which tests whether the original handler
      forwards unhandled commands to gegl_tile_backend_command(), and re-
      replaces the handler with either the original handler if it does,
      or a compatibility shim, which only forwards pre-0.4.10 commands to
      the original handler, if it doesn't.
  2. 11 Jul, 2018 1 commit
  3. 15 Sep, 2016 1 commit
  4. 29 Jan, 2014 1 commit
  5. 12 Sep, 2013 1 commit
  6. 05 Jun, 2013 1 commit
  7. 03 Jun, 2013 1 commit
  8. 28 Jan, 2013 1 commit
  9. 26 Jun, 2012 1 commit
  10. 23 Mar, 2012 1 commit
  11. 18 Mar, 2012 1 commit
  12. 14 Mar, 2012 1 commit
  13. 04 Sep, 2011 1 commit
  14. 13 Feb, 2011 1 commit
    • Øyvind "pippin" Kolås's avatar
      buffer: add API for pluggable buffers · 3ce74b69
      Øyvind "pippin" Kolås authored
      Adds an API that allows providing pluggin alternate Tile storage backends in
      GeglBuffer, this allows plugging existing low-level tile-level access APIs i
      backends for GeglBuffer, permitting a low-level of integration with external
      systems wrapping a GIMP, Krita, Blender, open streetmap or other (potentiall
      mip-mapped) tile backends allowing unified access through the GeglBuffer API
      This system should ease both migating GIMPs codebase to be more GEGL focused
      even in a transition period where GIMP is not fully migrated to use GEGL.
  15. 28 Apr, 2008 1 commit
    • Øyvind Kolås's avatar
      Made on disk-buffers opened on disk perform locking when invoking · a9fb1e6f
      Øyvind Kolås authored
      gegl_buffer_set, this allows transparent use of the buffers for writes
      since only one write will happen at a time. (At the moment the lock
      is implemented in the files header, and a GeglBuffer might get stuck
      in a locked state on disk if gegl is aborted when it holds the lock.)
      * gegl/buffer/gegl-buffer-access.c: (gegl_buffer_set): lock buffer
      on write if the buffer is shared.
      * gegl/buffer/gegl-buffer-index.h: fixed flags for header.
      * gegl/buffer/gegl-buffer-private.h:
      * gegl/buffer/gegl-buffer.c:
      (gegl_buffer_is_shared): new function reports if the buffer is shared
      (gegl_buffer_try_lock): tries to lock a shared buffer, if failed try
      again a bit later.
      (gegl_buffer_unlock): unlock a locked buffer, allows other clients to
      use the buffer.
      * gegl/buffer/gegl-tile-backend-file.[ch]: added _try_lock() _unlock()
      * gegl/buffer/gegl-tile-backend.[ch]: added shared flag to backend.
      svn path=/trunk/; revision=2258
  16. 27 Apr, 2008 1 commit
    • Øyvind Kolås's avatar
      added rev to header and tiles, added sketch of collaborative · 3ef74c82
      Øyvind Kolås authored
      * gegl/buffer/gegl-buffer-index.h: added rev to header and tiles,
      added sketch of collaborative datastructures.
      * gegl/buffer/gegl-buffer-load.c: (gegl_buffer_read_header): made 
      it possible to call with offset == NULL
      * gegl/buffer/gegl-buffer-save.c: (gegl_tile_entry_new),
      (gegl_tile_entry_destroy): do not use slice allocations for entries.
      * gegl/buffer/gegl-tile-backend-file.c: (file_entry_destroy),
      (get_tile), (set_tile), (flush), (load_index), (file_changed),
      (gegl_tile_backend_file_constructor): monitor buffer for changes and
      reload index if revision in header has changed.
      * gegl/buffer/gegl-tile-backend.h: added private pointer to storage a
      backend is member of, allows the backend to send messages through the
      storage's bus.
      * gegl/buffer/gegl-tile-handler-cache.c: (dispose), (command),
      (gegl_tile_handler_cache_invalidate): remove tiles from cache when
      they've changed on disk.
      * gegl/buffer/gegl-tile-source.h: added macro for
      * gegl/buffer/gegl-tile-storage.c: (gegl_tile_storage_constructor):
      store pointer to storage in backend.
      svn path=/trunk/; revision=2250
  17. 22 Apr, 2008 1 commit
    • Øyvind Kolås's avatar
      Make GeglBuffer able to use a serialized buffer directly as swap, as · ac01c07d
      Øyvind Kolås authored
      well as synchronize a buffer so that it can be resumed from swap.
      * gegl/buffer/gegl-buffer-load.c:
      (gegl_buffer_read_header): moved magic check to header read.
      (gegl_buffer_open): replaced by GeglBuffer being backed by a
      serialized GeglBuffer.
      * gegl/buffer/gegl-buffer.c: (gegl_buffer_constructor),
      (gegl_buffer_class_init), (gegl_buffer_new_from_path):
      made it possible to create buffer using a path.
      * gegl/buffer/gegl-tile-backend-file.c: (flush),
      (gegl_tile_backend_file_constructor): allow opening already
      written swap files.
      * gegl/buffer/gegl-tile-backend.h: provide some private storage to
      store a pointer to the header used to read in a buffer.
      svn path=/trunk/; revision=2217
  18. 18 Apr, 2008 1 commit
    • Øyvind Kolås's avatar
      renamed to: · 6a5b419b
      Øyvind Kolås authored
      * gegl/buffer/gegl-tile-backend-gio-tiles.c:
      * gegl/buffer/gegl-tile-backend-gio-tiles.h: renamed to:
      * gegl/buffer/gegl-tile-backend-tiledir.c:
      * gegl/buffer/gegl-tile-backend-tiledir.h:
      * gegl/buffer/gegl-tile-backend-swapfile.c:
      * gegl/buffer/gegl-tile-backend-swapfile.h: renamed to:
      * gegl/buffer/gegl-tile-backend-file.c:
      * gegl/buffer/gegl-tile-backend-file.h:
      * gegl/buffer/Makefile.am:
      * gegl/buffer/gegl-buffer-access.c:
      * gegl/buffer/gegl-buffer-save.c:
      * gegl/buffer/gegl-buffer-save.h:
      * gegl/buffer/gegl-buffer.c: 
      * gegl/buffer/gegl-tile-backend.h:
      * gegl/buffer/gegl-tile-handler-cache.c:
      * gegl/buffer/gegl-tile-source.h:
      * gegl/buffer/gegl-tile-storage.c:  updated accordingly.
      svn path=/trunk/; revision=2197
  19. 16 Apr, 2008 1 commit
  20. 14 Apr, 2008 1 commit
    • Øyvind Kolås's avatar
      s/Provider/Source/g s/provider/source/g s/PROVIDER/SOURCE/g · 8f275d29
      Øyvind Kolås authored
      * gegl/buffer/Makefile.am:
      * gegl/buffer/gegl-buffer-allocator.c:
      * gegl/buffer/gegl-buffer-load.c: 
      * gegl/buffer/gegl-buffer-private.h:
      * gegl/buffer/gegl-buffer-save.c:
      * gegl/buffer/gegl-buffer-types.h:
      * gegl/buffer/gegl-buffer.c: 
      * gegl/buffer/gegl-handler-cache.c:
      * gegl/buffer/gegl-handler-empty.c:
      * gegl/buffer/gegl-handler-log.c:
      * gegl/buffer/gegl-handler-zoom.c:
      * gegl/buffer/gegl-handler.c: 
      * gegl/buffer/gegl-handler.h:
      * gegl/buffer/gegl-handlers.c:
      * gegl/buffer/gegl-handlers.h:
      * gegl/buffer/gegl-provider.c:
      * gegl/buffer/gegl-provider.h:
      * gegl/buffer/gegl-source.c: 
      * gegl/buffer/gegl-source.h:
      * gegl/buffer/gegl-storage.c: 
      * gegl/buffer/gegl-tile-backend.c:
      * gegl/buffer/gegl-tile-backend.h:
      * gegl/buffer/gegl-tile-disk.c:
      * gegl/buffer/gegl-tile-gio.c:
      * gegl/buffer/gegl-tile-mem.c:
      * gegl/buffer/gegl-tile.c: 
      svn path=/trunk/; revision=2169
  21. 18 Jan, 2008 1 commit
    • Sven Neumann's avatar
      don't needlessly use a void pointer for BablFormat. · 11eca738
      Sven Neumann authored
      2008-01-18  Sven Neumann  <sven@gimp.org>
      	* gegl/buffer/gegl-tile-backend.h: don't needlessly use a void
      	pointer for BablFormat.
      	* gegl/buffer/gegl-tile-backend.c (get_property): actually
      	implement the getter for the "format" property.
      svn path=/trunk/; revision=1858
  22. 06 Jan, 2008 1 commit
    • Michael Natterer's avatar
      gegl/buffer/gegl-buffer-allocator.h gegl/buffer/gegl-buffer-load.h · 925b9e0f
      Michael Natterer authored
      2008-01-06  Michael Natterer  <mitch@gimp.org>
      	* gegl/buffer/gegl-buffer-allocator.h
      	* gegl/buffer/gegl-buffer-load.h
      	* gegl/buffer/gegl-buffer-private.h
      	* gegl/buffer/gegl-buffer-save.h
      	* gegl/buffer/gegl-buffer-types.h
      	* gegl/buffer/gegl-buffer.h
      	* gegl/buffer/gegl-cache.h
      	* gegl/buffer/gegl-handler-cache.h
      	* gegl/buffer/gegl-handler-empty.h
      	* gegl/buffer/gegl-handler-log.h
      	* gegl/buffer/gegl-handler-zoom.h
      	* gegl/buffer/gegl-handler.h
      	* gegl/buffer/gegl-handlers.h
      	* gegl/buffer/gegl-provider.h
      	* gegl/buffer/gegl-region-generic.h
      	* gegl/buffer/gegl-region.h
      	* gegl/buffer/gegl-sampler-lanczos.h
      	* gegl/buffer/gegl-sampler-linear.h
      	* gegl/buffer/gegl-sampler-nearest.h
      	* gegl/buffer/gegl-sampler.h
      	* gegl/buffer/gegl-storage.h
      	* gegl/buffer/gegl-tile-backend.h
      	* gegl/buffer/gegl-tile-disk.h
      	* gegl/buffer/gegl-tile-mem.h
      	* gegl/buffer/gegl-tile.h
      	* gegl/operation/gegl-extension-handler.h
      	* gegl/operation/gegl-operation-area-filter.h
      	* gegl/operation/gegl-operation-composer.h
      	* gegl/operation/gegl-operation-filter.h
      	* gegl/operation/gegl-operation-meta.h
      	* gegl/operation/gegl-operation-point-composer.h
      	* gegl/operation/gegl-operation-point-filter.h
      	* gegl/operation/gegl-operation-sink.h
      	* gegl/operation/gegl-operation-source.h
      	* gegl/operation/gegl-operation.h
      	* gegl/property-types/gegl-color.h
      	* gegl/property-types/gegl-curve.h: header cleanup: added missing
      	GEGL_IS_FOO() macros, unified include guards, indentation, remove
      	tons of includes, remove trailing whitespace, stuff...
      svn path=/trunk/; revision=1809
  23. 11 Nov, 2007 1 commit
  24. 10 Nov, 2007 1 commit
    • Øyvind Kolås's avatar
      Upgraded GEGL from (L)GPLv2 to (L)GPLv3. The library itself and the · 6609e9b8
      Øyvind Kolås authored
      	operations are under LGPLv3 and the sample programs using the GEGL
      	library are licensed under GPLv3. Copyright statements in all files
      	have been updated to reflect this change, the permission to use leter
      	versions of the GNU licenses have been retained in all instances.)
      	* COPYING: changed to GPLv3
      	* COPYING.LESSER: added (LGPLv3 's exceptions over GPLv3)
      svn path=/trunk/; revision=1682
  25. 06 Sep, 2007 1 commit
  26. 02 Jun, 2006 1 commit
  27. 31 May, 2006 1 commit