#include "piv-scheduler.h" void expand_graph(UfoPluginManager *manager, GList *gpu_nodes, UfoTaskNode *src1, UfoTaskNode *src2, UfoTaskNode *out, unsigned ring_start, unsigned ring_end, unsigned ring_step, GError **error, UfoTaskGraph *graph) { GList *it; UfoTaskNode *fftmult; for (it = gpu_nodes; it; it = it->next) { fftmult = ufo_plugin_manager_get_task (manager, "fftmult", error); g_object_set (G_OBJECT (fftmult), "ring_start", ring_start, NULL); g_object_set (G_OBJECT (fftmult), "ring_end", ring_end, NULL); g_object_set (G_OBJECT (fftmult), "ring_step", ring_step, NULL); ufo_task_graph_connect_nodes_full (graph, src1, fftmult, 0); ufo_task_graph_connect_nodes_full (graph, src2, fftmult, 1); ufo_task_graph_connect_nodes (graph, fftmult, out); ufo_task_node_set_proc_node (fftmult, it->data); } } void expand_graph2(UfoPluginManager *manager, GList *gpu_nodes, UfoTaskNode *src, UfoTaskNode *out, const char *plugin_str, GError **error, UfoTaskGraph *graph) { GList *it; UfoTaskNode *plugin; for (it = gpu_nodes; it; it = it->next) { plugin = ufo_plugin_manager_get_task (manager, plugin_str, error); ufo_task_graph_connect_nodes (graph, src, plugin); ufo_task_graph_connect_nodes (graph, plugin, out); ufo_task_node_set_proc_node (plugin, gpu_nodes->data); } }