2#include <Gfx/Graph/Node.hpp>
3#include <Gfx/Graph/NodeRenderer.hpp>
4#include <Gfx/Graph/RenderState.hpp>
5#include <Gfx/Graph/Uniforms.hpp>
7#include <score_plugin_gfx_export.h>
13 std::function<void()> onReady;
14 std::function<void()> onResize;
20 using score::gfx::NodeRenderer::NodeRenderer;
23 finishFrame(
RenderList&, QRhiCommandBuffer& commands, QRhiResourceUpdateBatch*& res);
35 virtual void setRenderer(std::shared_ptr<RenderList>) = 0;
40 virtual void startRendering() = 0;
41 virtual void render() = 0;
42 virtual void stopRendering() = 0;
43 virtual bool canRender()
const = 0;
44 virtual void onRendererChange() = 0;
52 virtual void setVSyncCallback(std::function<
void()>);
57 virtual void destroyOutput() = 0;
58 virtual std::shared_ptr<RenderState> renderState()
const = 0;
64 std::optional<double> manualRenderingRate;
65 bool outputNeedsRenderPass{};
Root data model for visual nodes.
Definition score-plugin-gfx/Gfx/Graph/Node.hpp:71
Renderer for a given node.
Definition NodeRenderer.hpp:11
Base class for sink nodes (QWindow, spout, syphon, NDI output, ...)
Definition OutputNode.hpp:31
OutputNodeRenderer * createRenderer(RenderList &r) const noexcept override=0
Create a renderer in a given context for this node.
Definition OutputNode.hpp:18
List of nodes to be rendered to an output.
Definition RenderList.hpp:19
A platform window in which the content is going to be rendered.
Definition plugins/score-plugin-gfx/Gfx/Graph/Window.hpp:22
Graphics rendering pipeline for ossia score.
Definition Filter/PreviewWidget.hpp:12
GraphicsApi
Available graphics APIs to use.
Definition RenderState.hpp:20
Definition OutputNode.hpp:11
Definition OutputNode.hpp:61