40 #ifndef ENGINE_PROCNODE_H 41 #define ENGINE_PROCNODE_H 64 typedef ProcNode* PNode;
87 typedef asset::Proc::ProcFunc ProcFunc;
89 ProcFunc* procFunction;
98 ProcFunc pFunc,
NodeID const& nID)
118 callDown (
State& currentProcess, uint requiredOutputNr)
const =0;
139 vector<Param> params;
152 bool isValid()
const;
155 uint
nrO() {
return wiringConfig_.nrO; }
171 pull (
State& currentProcess, uint requestedOutputNr=0)
const 173 return this->wiringConfig_.
callDown (currentProcess, requestedOutputNr);
180 ProcNode::isValid()
const 182 UNIMPLEMENTED (
"ProcNode validity self-check");
Abstraction to access the state of a currently ongoing render/calculation process, as it is tied to the supporting facilities of the vault layer.
Abstraction: Array of const references.
Basic set of definitions and includes commonly used together.
Access point to an ongoing render's processing state.
Marker tuple to identify a specific frame.
uint nrO()
output channel count
Any copy and copy construction prohibited.
Descriptor and access object for a plugin parameter.
Steam-Layer implementation namespace root.
Data processing Plugins and Codecs can be treated as a specific Kind of Asset.
Abstraction interface: array-like access by subscript.
Lumiera error handling (C++ interface).
Handle for a buffer for processing data, abstracting away the actual implementation.
Key abstraction of the Render Engine: A Data processing Node.
Identification tuple for denoting render nodes unambiguously.
Representation of the Media type of a data channel used within the engine.
Core abstraction: parameter to be controlled and possibly automated.
BuffHandle pull(State ¤tProcess, uint requestedOutputNr=0) const
Engine Core operation: render and pull output from this node.
Interface: Description of the input and output ports, processing function and predecessor nodes for a...
virtual BuffHandle callDown(State ¤tProcess, uint requiredOutputNr) const =0
the wiring-dependent part of the node operation.