Boost logo

Boost Users :

From: Stjepan Rajko (stipe_at_[hidden])
Date: 2008-07-20 19:53:08


Hello,

I uploaded some youtube videos of a new visual editor for the Dataflow
library. There are three examples, each using a different underlying
framework (the visual editor code is generic):

visually editing a Dataflow.Signals network (data flows instantly):
* http://www.youtube.com/watch?v=7a4HJ4zVPXc

visually editing a Dataflow.Managed network (data flows on request):
* http://www.youtube.com/watch?v=KwrnSjhJyf4

visually editing a BGL graph (this simple example lets you construct a
directed graph and query the number of strongly connected components):
* http://www.youtube.com/watch?v=gVLetAAnPrc

The latter two examples use proof-of-concept implementations of
alternate frameworks built on top of the generic framework that is
part of the Dataflow library:

Dataflow.Managed is unlike Dataflow.Signals in that doesn't couple
data transfer with component invocation. In other words, if producer
A is connected to consumer B, when A changes its value B will not be
notified immediately. Instead, after any number of values in the
network has changed, the network as a whole can be told to update (the
network will then notify all components whose inputs have been
modified, in the order of a topological sort of the components).
Alternatively, components can be invoked individually, which gives
them a chance to check their inputs / modify their outputs.

The BGL support layer for the Dataflow library is an example of how
something that is not strictly a dataflow thing (e.g., a graph) can
still satisfy Dataflow concepts (there are Components (vertices) that
can be connected), and be used with the framework (e.g., you get a GUI
editor for free).

If you're interested in playing with this:

The new GUI uses GLV (http://mat.ucsb.edu/glv/) which is included with
the dataflow library in the sandbox and integrated in the bjam build
of the examples. As long as you have glut/freeglut available, it
should build using gcc/darwin, MSVC8+, gcc/minGW, and if you are
better than me at knowing which X libraries to link with and know how
to manipulate a Jamfile, gcc/linux (any GCC version 4.x should work).
If you run into any problems, please let me know.

The latest code is currently available from the sandbox only,
instructions/docs at:
http://www.dancinghacker.com/code/dataflow/

Any feedback would be appreciated.

Kind regards,

Stjepan


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net