having trouble with gegl_node_to_xml

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



I am having trouble to save gegl operations to repeat them later. I
think, that gegl_node_to_xml is the operation I am looking for, but this
can be wrong.

I wrote this small program:

#include <stdio.h>
#include <gegl.h>

main (gint argc,
      gchar **argv)
    GeglNode *gegl, *gn_load, *gn_save, *gn_op;
    gchar* xmltext;

    g_thread_init (NULL);
    gegl_init (&argc, &argv);

    gegl = gegl_node_new ();
    gn_load = gegl_node_new_child(gegl, "operation", "gegl:load",
"path", "bsp-900x600.jpg", NULL);
    gn_save = gegl_node_new_child(gegl, "operation", "gegl:jpg-save",
"path", "out.jpg", NULL);
    gn_op   = gegl_node_new_child(gegl, "operation",
"gegl:unsharp-mask", "std-dev", 1.2, "scale", 8.0, NULL);
    gegl_node_link_many (gn_load, gn_op, gn_save, NULL);
    gegl_node_process (gn_save);

    gegl_node_to_xml(gegl, xmltext);
    printf("xmltext: %s\n", xmltext);

    g_object_unref (gegl);

    gegl_exit ();
    return 0;

These are the library version ldd told me:

    linux-gate.so.1 =>  (0xb78a1000)
    libgegl-0.1.so.0 => /usr/lib/libgegl-0.1.so.0 (0xb782c000)
    libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb76cb000)
    libgobject-2.0.so.0 => /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
    libgthread-2.0.so.0 => /usr/lib/i386-linux-gnu/libgthread-2.0.so.0
    libgio-2.0.so.0 => /usr/lib/i386-linux-gnu/libgio-2.0.so.0 (0xb757b000)
    libgmodule-2.0.so.0 => /usr/lib/i386-linux-gnu/libgmodule-2.0.so.0
    librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0xb756e000)
    libglib-2.0.so.0 => /lib/i386-linux-gnu/libglib-2.0.so.0 (0xb7496000)
    libbabl-0.1.so.0 => /usr/local/lib/libbabl-0.1.so.0 (0xb7448000)
    libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb7422000)
    libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xb7409000)
    /lib/ld-linux.so.2 (0xb78a2000)
    libresolv.so.2 => /lib/i386-linux-gnu/libresolv.so.2 (0xb73f4000)
    libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xb73de000)
    libselinux.so.1 => /lib/i386-linux-gnu/libselinux.so.1 (0xb73c3000)
    libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xb73bf000)
    libpcre.so.3 => /lib/i386-linux-gnu/libpcre.so.3 (0xb7380000)

And I hoped, that xmltext would be string, containing a xml tree for
this little gegl operation. unfortunally all I got where a handful of
binary bytes - not the xml text (somthing like "<gegl>....</gegl>") I
hoped for.

Any hints for me?

    thanks in advance

Gegl-developer mailing list

[Index of Archives]     [Yosemite News]     [Yosemite Photos]     [gtk]     [GIMP Users]     [KDE]     [Gimp's Home]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux