[Gegl-developer] geglbuffer-add-image writes GeglBuffer to disk only after a gegl_buffer_flush()?
Jerson Michael Perpetua
jersonperpetua at gmail.com
Thu Jun 4 08:00:51 PDT 2009
Hi Utkarsh,
I'm not an expert, but here's my take on this. You should probably start by
examining GeglBufferIterators (gegl/gegl/buffer/gegl-buffer-iterator.c) and
how they are used by GeglProcessors (gegl/gegl/process/processor.c). While
you're at it, it would also help if you can study all graph-related
constructs (gegl/gegl/graph/), especially the parts on GeglVisitors
(gegl/gegl/graph/gegl-visitor.c) and GeglVisitables
(gegl/gegl/graph/gegl-visitable.c) and their descendants (i.e. GeglNodes and
GeglPads). I suspect that these are the parts where the bulk of
multi-threading should be implemented.
As to your project's relation to my work, I'm currently looking into OpenGL
thread-safety. One solution that I found is to create a hidden OpenGL
context after initialization and create one shared OpenGL context per
thread. The other (much more attractive) solution is to do all OpenGL
operations in a single rendering thread. Threads that require OpenGL
operations will 'enqueue' their operations on the rendering thread.
The latter solution is better, imho, because context switching is both
costly and complex.
Regards,
Daerd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: /lists/gegl-developer/attachments/20090604/5ce99e0e/attachment.html
More information about the Gegl-developer
mailing list