1. 04 Dec, 2018 3 commits
  2. 24 Nov, 2018 1 commit
  3. 31 Oct, 2018 1 commit
    • Øyvind "pippin" Kolås's avatar
      gegl: add gegl_babl_variant · 326b0c86
      Øyvind "pippin" Kolås authored
      This function returns a babl format derived from the passed in format,
      based on which variant is requested it will at least be floating point
      and possibly also premultiplied forced, the enum/bitflags available
      as an argument is a work in progress.
      326b0c86
  4. 01 Oct, 2018 1 commit
  5. 27 Sep, 2018 1 commit
  6. 11 Jul, 2018 1 commit
  7. 25 Dec, 2017 1 commit
  8. 06 Sep, 2017 1 commit
    • Ell's avatar
      utils: reduce size overhead of gegl_malloc() · 18ab54ed
      Ell authored
      gegl_malloc() stores a pointer to the real malloc-ed buffer in front
      of the returned buffer, requiring sizeof(gpointer) bytes on top of
      GEGL_ALIGN.  Since the value of GEGL_ALIGN (16) easily fits in a
      single byte, we can replace this pointer with a single-byte offset
      to the real start of the buffer.  Since the offset from the real
      start of the buffer to the returned buffer is at least 1, we don't
      need to allocate any additional space on top of GEGL_ALIGN.
      18ab54ed
  9. 06 Feb, 2017 2 commits
    • Ell's avatar
      utils: leftovers from last commit · d49fc0e1
      Ell authored
      d49fc0e1
    • Ell's avatar
      utils: improve performance of gegl_memset_pattern() · d195c300
      Ell authored
      Copy the pattern using exponentially increasing block sizes, using
      the already-copied data as the source, yielding a logarithmic number
      of memcpy()s, instead of linear.  The block size is not increased
      indefinitely, as to not saturate the cache, so for large copies, the
      number of memcpy()s is still linear, but using a big-enough block
      size as to make it irrelevant.
      
      I actually had a benchmark for this, but it died with the old hdd :P
      IIRC, in some cases we care about, this about doubles performance.
      In other cases, it's far less significant, but it never (in realistic
      terms) seems to be a pessimization.
      d195c300
  10. 03 Apr, 2016 1 commit
  11. 02 Nov, 2013 1 commit
  12. 14 Oct, 2013 1 commit
    • Daniel Sabo's avatar
      Add gegl_memset_pattern · bf597a18
      Daniel Sabo authored
      gegl_memset_pattern is a multi byte version of memset, which is
      useful for filling many pixels with the same color. It is faster
      than memcpy when the pixel size is unknown, if the pixel size is
      fixed use memcpy so the compiler can fully inline the copy.
      bf597a18
  13. 12 Aug, 2013 1 commit
  14. 07 Jun, 2013 1 commit
  15. 05 Jun, 2013 1 commit
  16. 20 May, 2013 1 commit
  17. 09 Apr, 2013 1 commit
  18. 08 Apr, 2013 2 commits
  19. 16 Apr, 2011 1 commit
  20. 08 Jul, 2010 1 commit
  21. 19 Apr, 2010 1 commit
  22. 03 Dec, 2009 1 commit
  23. 02 Jun, 2009 1 commit
  24. 17 Mar, 2009 1 commit
  25. 22 Feb, 2009 1 commit
    • Martin Nordholts's avatar
      Remove the GEGL_INTERNAL define · 8d088ff8
      Martin Nordholts authored
      Remove the GEGL_INTERNAL define and instead of having incompatible
      public and internal APIs kept under control through preprocessing,
      make the internals depend on the public API and use the strategy of
      having a public API that is a subset of the internal API.
      
      svn path=/trunk/; revision=2929
      8d088ff8
  26. 21 Feb, 2009 1 commit
  27. 21 Apr, 2008 1 commit
  28. 20 Apr, 2008 1 commit
    • Øyvind Kolås's avatar
      pass --enable-debug when autogen is used. added check for --enable-debug · c4d0e56a
      Øyvind Kolås authored
      * autogen.sh: pass --enable-debug when autogen is used.
      * configure.ac: added check for --enable-debug added sse and mmx
      * gegl/gegl-debug.h: debug infrastructure like the one in clutter.
      * gegl/gegl-init.h: added gegl_get_debug_enabled().
      * gegl/gegl-init.c: (gegl_post_parse_hook), (gegl_arg_debug_cb),
      (gegl_arg_no_debug_cb), (gegl_get_debug_enabled): added debug
      infrastructure.
      * gegl/gegl-utils.[ch]: removed old unused log infrastructure.
      
      svn path=/trunk/; revision=2206
      c4d0e56a
  29. 18 Apr, 2008 2 commits
  30. 17 Apr, 2008 1 commit
    • Øyvind Kolås's avatar
      added mmx and cpu detection. · 736899f4
      Øyvind Kolås authored
      * configure.ac: added mmx and cpu detection.
      * gegl/Makefile.am:
      * gegl/gegl-cpuaccel.[ch]: added from GIMP.
      * gegl/gegl-plugin.h: include config.h when compiling in-tree (to
      allow checking for USE_SSE in ops.
      * gegl/gegl-utils.[ch]: (gegl_malloc), (gegl_free): added malloc and
      free that aligns on 16byte boundaries.
      * gegl/operation/gegl-operation-point-composer.c:,
      * gegl/operation/gegl-operation-point-filter.c:
      (process_inner): align allocated buffers on 16byte boundaries to
      make it possible to process RGBA buffers using SSE.
      * gegl/operation/gegl-operation-processors.c: 
      (gegl_operation_class_add_processor): added category SSE that is
      autoenabled if sse support is compiled in and detected.
      * operations/common/invert.c: (process_sse), 
      (gegl_chant_class_init): accelerate the invert operation with vector
      maths using SSE.
      
      svn path=/trunk/; revision=2184
      736899f4
  31. 05 Feb, 2008 4 commits
  32. 06 Jan, 2008 1 commit
    • Hans Breuer's avatar
      [porting to build with win32/msvc, see bug #507288] · b50d1a98
      Hans Breuer authored
      2007-01-06  Hans Breuer  <hans@breuer.org>
      
      	[porting to build with win32/msvc, see bug #507288]
      
      	* gegl/buffer/gegl-buffer-allocator.c : use HAVE_UNISTD_H, include 
      	process.h for win32 and declare variables at the start of the 
      	block (C89 requirement)
      	* gegl/buffer/gegl-buffer-load.c : use HAVE_UNISTD_H and 
      	#include <io.h> on win32 
      	* gegl/buffer/gegl-buffer-save.c : -"-, define S_IRUSR
      	* gegl/buffer/gegl-buffer.c gegl/buffer/gegl-sampler-linear.c
      	gegl/buffer/gegl-sampler-nearest.c : declare variables at the start 
      	of a block
      	* gegl/buffer/gegl-provider.c gegl/process/gegl-processor.c : use 
      	G_STRFUNC rather than raw gcc __func__
      	* gegl/buffer/gegl-tile-disk.c : #include "config.h" at the beginning 
      	of the file, use HAVE_UNISTD_H, <io.h> some conditional defines 
      	like #define ftruncate(f,d) g_win32_ftruncate(f,d)
      	* gegl/buffer/gegl-tile-mem.c gegl/buffer/gegl-tile.c : 
      	#include config.h, use HAVE_UNISTD_H
      	* gegl/gegl-init.c : on win32 resolve module directory at runtime, 
      	not compile time
      	* gegl/gegl-utils.[ch] : a 'pure' inline function can not be 
      	exported as well, either _gegl_float_epsilon_equal needs to be implemented 
      	in the header or not be inline 
      	* gegl/gegl-xml.c : #include "config.h", define PATH_MAX if needed
      	* gegl/graph/gegl-node.c : use G_STRFUNC
      	* gegl/module/gegldatafiles.c : #include "config.h" and define 
      	S_ISREG etc
      
      	* gegl/gegl-chant.h operations/color/remap.c : use G_MODULE_EXPORT to mark gegl_module_query and
      	gegl_module_register for export
      	
      	* gegl/operations/affine/affine.c : s/strcasecmp/g_strcasecmp/
      	* gegl/operations/affine/module.[ch] : use G_MODULE_EXPORT
      	* gegl/operations/core/convert-format.c 
      	  gegl/operations/workshop/mblur.c : c99ism - mixed declaration and
      	  implementation
      	* gegl/operations/enhance/bilateral-filter.c : use g_alloca() instead 
      	of a gcc-only dynamic sized array on the stack
      	* gegl/operations/generated/math.rb : define powf() for msvc build
      	* gegl/operations/io/raw-load.c : use HAVE_UNISTD_H and define 
      	popen/pclose for msvc
      
      	* tools/operation_reference.c : config.h and HAVE_UNISTD_H
      
      	* bin/gegl.c : work-around another msvc limitation (C2026:
      	string too big, trailing characters truncated) In fact it is more
      	a line-too-long limit.
      	* bin/editor.c : define PATH_MAX
      	* bin/gegl-node-editor.c : HAVE_UNISTD_H
      	* bin/gegl-node-editor.c : if (0) is not enough for msvc to get rid of
      	the unresolved StockIcon(), use #if 0
      
      svn path=/trunk/; revision=1807
      b50d1a98