2#include <ossia/dataflow/graph_node.hpp>
3#include <ossia/editor/loop/loop.hpp>
4#include <ossia/editor/scenario/scenario.hpp>
9template <
void (graph_node::*fun_T)(
bool)>
10struct mark_discontinuous
12 void operator()(scenario& s)
const
14#if defined(OSSIA_SCENARIO_DATAFLOW)
15 (s.node.get()->*fun_T)(
true);
16 for(
auto& itv : s.get_time_intervals())
18 if(!itv->node->requested_tokens.empty())
25 void operator()(time_interval& itv)
const
27#if defined(OSSIA_SCENARIO_DATAFLOW) && defined(__cpp_rtti)
28 (itv.node.get()->*fun_T)(
true);
29 for(
auto& proc : itv.get_time_processes())
33 (proc->node.get()->*fun_T)(
true);
34 auto ptr = proc->node.
get();
35 if(
auto scenar =
dynamic_cast<scenario*
>(ptr))
42using mark_start_discontinuous
43 = mark_discontinuous<&graph_node::set_start_discontinuous>;
44using mark_end_discontinuous = mark_discontinuous<&graph_node::set_end_discontinuous>;