![]() |
Murl Engine API
Version 2018.3
|
The IProgram graph node interface. More...
#include <murl_graph_i_program.h>
The IProgram graph node interface.
This interface represents a generic GPU shader program used to render geometry.
See Graph::IMaterial for attaching a program to a given material. See Graph::IParameters for defining actual program parameters.
Public Member Functions | |
virtual INode * | GetNodeInterface ()=0 |
Get the mutable Graph::INode interface. More... | |
virtual const INode * | GetNodeInterface () const =0 |
Get the constant Graph::INode interface. More... | |
virtual IProgramNodeTarget * | GetFallbackProgramNodeTarget ()=0 |
Get the mutable Graph::IShaderProgram container storing an optional fallback program. More... | |
virtual const IProgramNodeTarget * | GetFallbackProgramNodeTarget () const =0 |
Get the constant Graph::IProgram container storing an optional fallback program. More... | |
virtual UInt32 | GetNumberOfStages () const =0 |
Get the program's number of stages. More... | |
virtual Video::IProgram * | GetVideoProgramObject (UInt32 stage) const =0 |
Get the program's internal video renderer object. More... | |
virtual Bool | IsValid (Bool checkFallbacks) const =0 |
Check if the program is valid. More... | |
virtual const String & | GetLinkerLog () const =0 |
Get the shader linker log. More... | |
|
pure virtual |
Get the mutable Graph::INode interface.
This method returns a mutable pointer to the node's Graph::INode interface, to be able to query or modify common node properties such as active state, visibility or ID.
|
pure virtual |
Get the constant Graph::INode interface.
This method returns a constant pointer to the node's Graph::INode interface, to be able to query common node properties such as active state, visibility or ID.
|
pure virtual |
Get the mutable Graph::IShaderProgram container storing an optional fallback program.
This method returns a mutable pointer to the node's Graph::IShaderProgram container that stores an optional reference to another shader program node that is used instead, if linking of the shader objects failed.
|
pure virtual |
Get the constant Graph::IProgram container storing an optional fallback program.
This method returns a constant pointer to the node's Graph::IProgram container that stores an optional reference to another shader program node that is used instead, if linking of the shader objects failed.
|
pure virtual |
Get the program's number of stages.
|
pure virtual |
Get the program's internal video renderer object.
stage | The stage to query. |
Check if the program is valid.
If linking of the program object fails, this method returns false.
checkFallbacks | If false, only the current program is considered. Otherwise, the method returns true if any of its fallback programs is valid. |
|
pure virtual |
Get the shader linker log.
If linking of the program object fails, this method returns the output provided by the OS/video API. Otherwise, an empty string is returned.