2 #include <Gfx/Graph/Node.hpp>
3 #include <Gfx/Graph/RenderList.hpp>
5 #include <ossia/detail/algorithms.hpp>
7 #include <score_plugin_gfx_export.h>
15 struct SCORE_PLUGIN_GFX_EXPORT
Graph
37 void addEdge(
Port* source,
Port* sink);
42 void removeEdge(
Port* source,
Port* sink);
47 void addAndLinkEdge(
Port* source,
Port* sink);
52 void unlinkAndRemoveEdge(
Port* source,
Port* sink);
85 void setVSyncCallback(std::function<
void()>);
90 bool canDoVSync()
const noexcept;
92 const std::vector<std::shared_ptr<RenderList>>& renderLists()
const noexcept
99 void createOutputRenderList(
OutputNode& output);
100 void recreateOutputRenderList(
OutputNode& output);
101 std::shared_ptr<RenderList>
102 createRenderList(
OutputNode*, std::shared_ptr<RenderState> state);
104 std::vector<std::shared_ptr<RenderList>> m_renderers;
105 std::vector<std::shared_ptr<Window>> m_unused_windows;
106 std::function<void()> m_vsync_callback;
108 std::vector<score::gfx::Node*> m_nodes;
109 std::vector<Edge*> m_edges;
111 std::vector<OutputNode*> m_outputs;
Root data model for visual nodes.
Definition: score-plugin-gfx/Gfx/Graph/Node.hpp:60
Base class for sink nodes (QWindow, spout, syphon, NDI output, ...)
Definition: OutputNode.hpp:23
Graphics rendering pipeline for ossia score.
Definition: Filter/PreviewWidget.hpp:12
GraphicsApi
Available graphics APIs to use.
Definition: RenderState.hpp:17
Represents a graph of renderers.
Definition: score-plugin-gfx/Gfx/Graph/Graph.hpp:16
Port of a score::gfx::Node.
Definition: score-plugin-gfx/Gfx/Graph/Utils.hpp:48