diff options
Diffstat (limited to 'src/gpu/sequence_v2.h')
| -rw-r--r-- | src/gpu/sequence_v2.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/gpu/sequence_v2.h b/src/gpu/sequence_v2.h index 1cc5f47..2197a82 100644 --- a/src/gpu/sequence_v2.h +++ b/src/gpu/sequence_v2.h @@ -66,6 +66,9 @@ class NodeRegistry { // Check if node exists bool has_node(const std::string& name) const; + // Register external view (for source/sink managed externally) + void set_external_view(const std::string& name, WGPUTextureView view); + private: WGPUDevice device_; int default_width_; @@ -96,6 +99,19 @@ class SequenceV2 { void resize(int width, int height); + // Initialize effect nodes (call at end of subclass constructor) + void init_effect_nodes(); + + // Set surface texture view for rendering (sink node) + void set_sink_view(WGPUTextureView view) { + nodes_.set_external_view("sink", view); + } + + // Set source texture view (input framebuffer) + void set_source_view(WGPUTextureView view) { + nodes_.set_external_view("source", view); + } + // Test accessor const std::vector<EffectDAGNode>& get_effect_dag() const { return effect_dag_; |
