On 28 August 2011 10:34, Joerg Beyer <j.beyer@xxxxxx> wrote: > hello, > > 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> > > gint > 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); You probably want to do xmltext = gegl_node_to_xml(gegl, pwd); or similar. Where pwd is the current working directory. See the documentation at http://gegl.org/api.html#gegl_node_to_xml > 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 > (0xb7683000) > libgthread-2.0.so.0 => /usr/lib/i386-linux-gnu/libgthread-2.0.so.0 > (0xb767e000) > 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 > (0xb7577000) > 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 > Joerg > > _______________________________________________ > Gegl-developer mailing list > Gegl-developer@xxxxxxxxxxxxxxxxxxxxxx > https://lists.XCF.Berkeley.EDU/mailman/listinfo/gegl-developer > -- Jon Nordby - www.jonnor.com _______________________________________________ Gegl-developer mailing list Gegl-developer@xxxxxxxxxxxxxxxxxxxxxx https://lists.XCF.Berkeley.EDU/mailman/listinfo/gegl-developer