
Joel de Guzman, I'd like to enhance my future boost::layout library proposal to use your boost::fusion. Here is a simple example of the boost::layout framework, that uses boost::gill as the view parameter. A boost::layout functor takes the following form: struct layer { template <typename view_t> void operator()(view_t& view) {} }; Examples of layers could be: fill_layer<> fill; border_layer<> border; text_layer<> text; Lets say I want to combine three layers into a single drawing operation. Currently, I do it like this: typedef boost::function<void (view_t&) > layer_t; layer_t layers[] = { fill_layer<>, border_layer<>, text_layer<> } draw_layers draw(layers,sizeof(layers)/sizeof(layer_t)); boost::gil::rgb8view_t view; draw(view); This works fine, but I would like to improve it by using boost fusion. Any suggestions or hints to get me started?

on Mon Jul 07 2008, "Tom Brinkman" <reportbase-AT-gmail.com> wrote:
Joel de Guzman,
I'd like to enhance my future boost::layout library proposal to use your boost::fusion.
Hi Tom, Have you looked into Adobe's Eve library, described in http://lambda-the-ultimate.org/node/563 ? -- Dave Abrahams BoostPro Computing http://www.boostpro.com
participants (2)
-
David Abrahams
-
Tom Brinkman