// This example demonstrates how to use 'dump' method to inspect // a taskflow graph. #include int main(){ tf::Taskflow tf("Visualization Demo"); // ------------------------------------------------------ // Static Tasking // ------------------------------------------------------ auto A = tf.emplace([] () { std::cout << "Task A" << std::endl; }); auto B = tf.emplace([] () { std::cout << "Task B" << std::endl; }); auto C = tf.emplace([] () { std::cout << "Task C" << std::endl; }); auto D = tf.emplace([] () { std::cout << "Task D" << std::endl; }); auto E = tf.emplace([] () { std::cout << "Task E" << std::endl; }); A.precede(B, C, E); C.precede(D); B.precede(D, E); std::cout << "[dump without name assignment]\n"; tf.dump(std::cout); std::cout << "[dump with name assignment]\n"; A.name("A"); B.name("B"); C.name("C"); D.name("D"); E.name("E"); tf.dump(std::cout); // ------------------------------------------------------ // Dynamic Tasking // ------------------------------------------------------ return 0; }