2#include <Gfx/Graph/OutputNode.hpp>
13 explicit ScreenNode(
bool embedded =
false,
bool startFullScreen =
false);
16 void startRendering()
override;
17 void render()
override;
18 void onRendererChange()
override;
19 bool canRender()
const override;
20 void stopRendering()
override;
22 void setRenderer(std::shared_ptr<RenderList> r)
override;
25 void setScreen(QScreen*);
26 void setPosition(QPoint pos);
27 void setSize(QSize sz);
28 void setRenderSize(QSize sz);
29 void setFullScreen(
bool);
31 void setTitle(QString);
34 GraphicsApi graphicsApi, std::function<
void()> onReady,
35 std::function<
void()> onUpdate, std::function<
void()> onResize)
override;
36 void destroyOutput()
override;
39 std::shared_ptr<RenderState> renderState()
const override;
43 const std::shared_ptr<Window>& window()
const noexcept {
return m_window; }
45 std::function<void(QPointF)> onWindowMove;
46 std::function<void(QPointF, QPointF)> onMouseMove;
47 std::function<void(QTabletEvent*)> onTabletMove;
48 std::function<void(
int,
const QString&)> onKey;
53 std::shared_ptr<Window> m_window{};
54 QRhiSwapChain* m_swapChain{};
55 QRhiRenderBuffer* m_depthStencil{};
58 std::optional<QPoint> m_pos{};
59 std::optional<QSize> m_sz{};
60 std::optional<QSize> m_renderSz{};
Base class for sink nodes (QWindow, spout, syphon, NDI output, ...)
Definition OutputNode.hpp:24
Definition OutputNode.hpp:11
List of nodes to be rendered to an output.
Definition RenderList.hpp:19
Definition ScreenNode.cpp:526
Definition ScreenNode.cpp:556
Graphics rendering pipeline for ossia score.
Definition Filter/PreviewWidget.hpp:12
GraphicsApi
Available graphics APIs to use.
Definition RenderState.hpp:17
void setCursor(Qt::CursorShape c)
setCursor sets the cursor safely.
Definition ClearLayout.cpp:8
Definition OutputNode.hpp:49
This node is used for rendering to a score::gfx::Window.
Definition ScreenNode.hpp:12