#include #include #include #include #define signalslib signals #define signals signals #include #include #include #include "multichain.hpp" class UnfusedDoublerClass : public boost::signals::filter { public: typedef void result_type; void operator()(float x) {out(2*x);} }; int main( int argc, char *argv[]) { std::cout << "------------------------------------" << std::endl; std::cout << "------------------------------------" << std::endl; // Example of the normal one component chain from the documentaion boost::signals::chain doubling_chain(4, NULL); boost::signals::storage floater(1.0f); boost::signals::storage collector(0.0f); floater >>= doubling_chain >>= collector; floater.send(); std::cout<()< > MultiChain(); boost::signals::storage floater2(1.0f); boost::signals::storage collector2(0.0f); floater2 >>= MultiChain; //MultiChain >>= collector2; floater2.send(); std::cout<()<