Loading...
Searching...
No Matches
score::gfx::OutputNode Class Referenceabstract
Base class for sink nodes (QWindow, spout, syphon, NDI output, ...) More...
Inheritance diagram for score::gfx::OutputNode:

Detailed Description
Base class for sink nodes (QWindow, spout, syphon, NDI output, ...)
Classes | |
struct | Configuration |
Public Member Functions | |
virtual void | setRenderer (std::shared_ptr< RenderList >)=0 |
virtual RenderList * | renderer () const =0 |
OutputNodeRenderer * | createRenderer (RenderList &r) const noexcept override=0 |
Create a renderer in a given context for this node. | |
virtual void | startRendering ()=0 |
virtual void | render ()=0 |
virtual void | stopRendering ()=0 |
virtual bool | canRender () const =0 |
virtual void | onRendererChange ()=0 |
virtual void | createOutput (GraphicsApi graphicsApi, std::function< void()> onReady, std::function< void()> onUpdate, std::function< void()> onResize)=0 |
virtual void | updateGraphicsAPI (GraphicsApi) |
virtual void | destroyOutput ()=0 |
virtual std::shared_ptr< RenderState > | renderState () const =0 |
virtual Configuration | configuration () const noexcept=0 |
![]() | |
Node (const Node &)=delete | |
Node (Node &&)=delete | |
Node & | operator= (const Node &)=delete |
Node & | operator= (Node &&)=delete |
virtual void | renderedNodesChanged () |
Whenever render nodes are added / removed. | |
virtual void | process (Message &&msg) |
Process a message from the execution engine. | |
virtual void | update () |
void | materialChange () noexcept |
Used to notify a material change from the model to the renderers. | |
bool | hasMaterialChanged (int64_t &renderer) const noexcept |
void | geometryChange () noexcept |
Used to notify a geometry change from the model to the renderers. | |
bool | hasGeometryChanged (int64_t &renderer) const noexcept |
void | renderTargetChange () noexcept |
Used to notify a render target (texture inlet) change from the model to the renderers. | |
bool | hasRenderTargetChanged (int64_t &renderer) const noexcept |
Additional Inherited Members | |
![]() | |
std::vector< Port * > | input |
Input ports of that node. | |
ossia::small_pod_vector< Port *, 1 > | output |
Output ports of that node. | |
ossia::flat_map< RenderList *, score::gfx::NodeRenderer * > | renderedNodes |
Map associating each RenderList to a Renderer for this model. | |
std::atomic_int64_t | materialChanged {0} |
std::atomic_int64_t | geometryChanged {-1} |
std::atomic_int64_t | renderTargetSpecChanged {-1} |
int32_t | id = -1 |
bool | addedToGraph {} |
Member Function Documentation
◆ createRenderer()
|
overridepure virtualnoexcept |
Create a renderer in a given context for this node.
Implements score::gfx::Node.
Implemented in score::gfx::ScreenNode, Gfx::LibavEncoderNode, Gfx::Sh4ltOutputNode, Gfx::ShmdataOutputNode, and Gfx::SpoutNode.
The documentation for this class was generated from the following files:
- OutputNode.hpp
- OutputNode.cpp