1. 11 Nov, 2017 1 commit
    • Ell's avatar
      graph, process: replace DFS/BFS with topological search · f68e28b2
      Ell authored
      Remove gegl_visitor_{dfs,bfs}_traverse().  They weren't actually
      performing DFS and BFS, but were rather characterized by performing
      topological (dependencies-first) and reverse-topological
      (dependencies-last) search.
      
      Instead, add gegl_visitor_traverse_[reverse_]topological(), which
      perform a forward- and reverse-topological search, with lower
      overhead (in the BFS case, the specific order is different than
      before.)
      
      Adapt the rest of the code to use the new functions.  In
      particular, use a single GQueue in GeglGraphTraversal to store the
      path in topological order, instead of separate DFS and BFS paths.
      We forward-iterate over the path where we'd previously used the DFS
      list, and reverse-iterate where we'd previously used the BFS list.
      
      Remove GeglListVisitor, since it's no longer used.
      f68e28b2
  2. 10 Nov, 2017 1 commit
    • Ell's avatar
      gegl-dot: a few fixes · 5ad5ce46
      Ell authored
      In gegl-dot.c, don't set "id" property when constructing the dot
      visitor.  Visitors no longer have this property.
      
      In gegl-dot-visitor.c, don't chain up to the visit_{pad,node}()
      functions of the base class.  They used to be a NOP before the
      last few commits, and now they're NULL.
      5ad5ce46
  3. 01 Dec, 2013 1 commit
    • Daniel Sabo's avatar
      Move gegl.h declarations into their own headers. · 90e5935f
      Daniel Sabo authored
      gegl-init.c -> gegl-init.h
      gegl-apply.c -> gegl-apply.h
      gegl-processor.c -> process/gegl-processor.h
      gegl-c.c -> gegl-c.h
      gegl-node.c -> graph/gegl-node.h
      misc -> gegl-operations-util.h
      
      gegl-c.h is intentionally left out of the documentation
      list because it contains only deprecated functions.
      
      The functions in gegl-operations-util.h are still duplicate
      definitions, but moving them to another file for now is
      necessary to fix the ordering of the documentation html files.
      
      There is a guard against directly including gegl-operations-util.h
      because its future is uncertain and it shouldn't be included
      directly even in internal code.
      90e5935f
  4. 10 Sep, 2012 1 commit
  5. 27 Jul, 2012 1 commit
  6. 29 Mar, 2012 1 commit
  7. 04 Aug, 2011 1 commit
  8. 30 Jul, 2010 1 commit
  9. 29 Jul, 2010 1 commit
  10. 21 Jun, 2009 1 commit
  11. 30 May, 2009 1 commit
  12. 26 May, 2009 4 commits
  13. 12 Apr, 2009 2 commits
  14. 11 Apr, 2009 3 commits
  15. 26 Mar, 2009 1 commit
  16. 28 Feb, 2009 2 commits
  17. 26 Feb, 2009 2 commits
  18. 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
  19. 21 Feb, 2009 1 commit
  20. 15 Feb, 2009 1 commit
  21. 06 Apr, 2008 1 commit
    • Øyvind Kolås's avatar
      modified to not generate as many warnings about not priorly declared · 609f7730
      Øyvind Kolås authored
      * gegl/gegl-chant.h: modified to not generate as many warnings about
      not priorly declared function prototypes.
      * gegl/gegl-dot.c: add function prototype.
      * gegl/gegl-init.c: do not add an erronious pkg-config
      lineto the makefile.
      * gegl/operation/gegl-operation.h: added protoype for
      gegl_list_properties()
      * operations/common/gaussian-blur.c:
      * operations/common/mblur.c:
      * operations/external/ff-load.c:
      * operations/external/png-load.c:
      * operations/external/png-save.c:
      * operations/external/svg-load.c: Fixed lack off function
      declarations/made functions static.
      
      svn path=/trunk/; revision=2153
      609f7730
  22. 31 Jan, 2008 1 commit
  23. 21 Jan, 2008 1 commit
    • Øyvind Kolås's avatar
      First shout at installing headers making it possible to build external · 217e658f
      Øyvind Kolås authored
      operations, either as plug-ins or static objects in an application
      using GEGL.
      * gegl/Makefile.am: added gegl-chant.h and module/geglmodule*.h to the
      set of headers to be installed in the gegl header base dir.
      * gegl/module/geglmodule.h: added comment about module ABI versions,
      and updated instruction on when this ABI should be incremented. (we
      should probably allow a range of ABIs, one to be incremented on ABI
      addition and the lower threshold to be incremented on ABI change.
      * gegl/module/geglmoduletypes.h: removed invalid header.
      * gegl/gegl-chant.h: added comment at top.
      * gegl/graph/gegl-pad.h: moved definition of GeglPadType ..
      * gegl/gegl-types.h: .. here, as well as reorganized this file a bit
      to guard against multiple inclusion.
      * gegl/gegl.h: added some guards against multiple inclusion.
      The rest of these files were changed to make them compile, there are
      still some warnings about undeclared functions being issued that needs
      sorting out.
      * gegl/buffer/gegl-buffer-allocator.c:
      * gegl/buffer/gegl-buffer-load.c:
      * gegl/buffer/gegl-buffer-save.c:
      * gegl/buffer/gegl-buffer.c:
      * gegl/buffer/gegl-handler-cache.c:
      * gegl/buffer/gegl-region-generic.c:
      * gegl/buffer/gegl-tile.c:
      * gegl/gegl-dot.c:
      * operations/Makefile-operations.am:
      * operations/color/mono-mixer.c:
      * operations/io/exr-load.cpp:
      * operations/io/load-buffer.c:
      * operations/io/load.c:
      * operations/io/png-save.c:
      * operations/io/save-pixbuf.c:
      * operations/render/checkerboard.c:
      * operations/render/introspect.c:
      
      svn path=/trunk/; revision=1874
      217e658f
  24. 11 Nov, 2007 1 commit
  25. 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
      6609e9b8
  26. 09 Nov, 2007 1 commit
  27. 25 Mar, 2007 1 commit
  28. 08 Mar, 2007 1 commit
  29. 01 Feb, 2007 1 commit
  30. 31 Jan, 2007 2 commits
    • Øyvind Kolås's avatar
      Replaced (most) GLists with GSLists. · d3aa41c2
      Øyvind Kolås authored
      * bin/gegl-view.c: (expose_event):
      * gegl/buffer/gegl-tile-disk.c: (gegl_tile_disk_constructor):
      * gegl/gegl-dot.c: (gegl_add_graph):
      * gegl/gegl-node.c: (finalize), (gegl_node_get_pad),
      (gegl_node_add_pad), (gegl_node_remove_pad), (find_connection),
      (gegl_node_connect_from), (gegl_node_disconnect),
      (gegl_node_disconnect_sources), (gegl_node_disconnect_sinks),
      (gegl_node_get_num_sinks), (gegl_node_get_num_sources),
      (gegl_node_get_num_input_pads), (gegl_node_get_num_output_pads),
      (gegl_node_get_depends_on), (gegl_node_set_operation_object),
      (gegl_node_get_producer), (gegl_node_get_consumers):
      * gegl/gegl-node.h:
      * gegl/gegl-pad.c: (gegl_pad_connect), (gegl_pad_disconnect),
      (gegl_pad_get_num_connections), (gegl_pad_get_depends_on),
      (gegl_pad_get_connected_to):
      * gegl/gegl-pad.h:
      * gegl/gegl-processor.c: (gegl_processor_set_rectangle),
      (render_rectangle), (gegl_processor_render):
      * gegl/gegl-visitable.c: (gegl_visitable_depends_on):
      * gegl/gegl-visitable.h:
      * gegl/gegl-visitor.c: (finalize), (init_dfs_traversal),
      (dfs_traverse), (init_bfs_traversal), (gegl_visitor_bfs_traverse),
      (visit_pad), (visit_node):
      * gegl/gegl-visitor.h:
      * operations/transform/affine.c: (is_intermediate_node),
      (is_composite_node), (get_source_matrix):
      
      svn path=/trunk/; revision=1288
      d3aa41c2
    • Øyvind Kolås's avatar
      Made gegl_node_get_children return (thus be) a GSList to make the · 0153a227
      Øyvind Kolås authored
      types of lists returned by GEGL consistent.
      * gegl/gegl-dot.c: (gegl_add_graph):
      * gegl/gegl-graph.c: (gegl_node_add_child),
      (gegl_node_remove_child), (gegl_node_get_num_children),
      (gegl_node_get_nth_child), (gegl_node_get_children):
      * gegl/gegl-graph.h:
      * gegl/gegl-node.h:
      * gegl/gegl.h:
      
      svn path=/trunk/; revision=1275
      0153a227
  31. 04 Jan, 2007 1 commit
    • Øyvind Kolås's avatar
      Merged GeglGraph class into GeglNode class. (more API cleanup to · 7ee6bd48
      Øyvind Kolås authored
      follow).
      * bin/editor-optype.c: (chain_in_operation):
      * bin/editor.c: (cb_introspect):
      * bin/export.c: (get_input_rect):
      * bin/gegl-store.c: (gegl_store_set_gegl):
      * bin/gegl-tree-editor-action.c: (add_sibling_op), (add_child_op):
      * bin/gegl-tree-editor.c: (tree_editor_get_active):
      * bin/gegl.c: (main):
      * gegl/gegl-dot.c: (gegl_add_graph):
      * gegl/gegl-graph.c: (gegl_node_remove_children),
      (gegl_node_add_child), (gegl_node_remove_child),
      (gegl_node_get_num_children), (gegl_node_get_nth_child),
      (gegl_node_get_children), (gegl_node_new_node),
      (gegl_node_create_node), (gegl_node_get_pad_proxy),
      (gegl_node_input), (gegl_node_output), (gegl_node_new):
      * gegl/gegl-graph.h:
      * gegl/gegl-node-dynamic.h:
      * gegl/gegl-node.c: (gegl_node_class_init), (gegl_node_init),
      (dispose), (gegl_node_get_depends_on), (gegl_node_get),
      (gegl_node_get_valist), (gegl_node_set_property),
      (gegl_node_get_property):
      * gegl/gegl-node.h:
      * gegl/gegl-operation.c: (get_defined_region),
      (get_affected_region), (calc_source_regions):
      * gegl/gegl-xml.c: (start_element), (end_element), (gegl_to_xml):
      * gegl/gegl.h:
      * operations/file-io/load.c: (attach), (refresh_cache):
      * operations/meta/dropshadow.c: (attach):
      * operations/meta/layer.c: (attach), (refresh_cache):
      * operations/meta/tonemap.c: (attach):
      * operations/meta/unsharp-mask.c: (attach):
      * operations/render/introspect.c: (process):
      * operations/workshop/dog.c: (attach):
      * tests/dfspadvisitortest.c: (test_dfs_pad_visitor):
      * tests/graphtest.c: (test_graph), (test_graph_properties),
      (test_graph_property_visitors):
      * tests/mockimageoperationtest.c:
      (test_mock_image_operation_g_object_properties),
      (test_mock_image_operation_chain):
      * tests/updatepadtest.c: (test_update_pad):
      * tools/introspect.c: (stuff):
      
      svn path=/trunk/; revision=1122
      7ee6bd48