diff options
| author | Glenn Smith <glenn@vector35.com> | 2024-12-27 16:14:46 -0500 |
|---|---|---|
| committer | Glenn Smith <glenn@vector35.com> | 2025-01-30 17:20:05 -0500 |
| commit | 8862696926173104957729683832591438161557 (patch) | |
| tree | 78ba6d7dc8144430136086c8dc84726171eec8ab /flowgraph.cpp | |
| parent | 5a5426d030b6be26d4564ba1eba2d8a275533256 (diff) | |
Render Layers
Diffstat (limited to 'flowgraph.cpp')
| -rw-r--r-- | flowgraph.cpp | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/flowgraph.cpp b/flowgraph.cpp index 257764c9..b28b7ed9 100644 --- a/flowgraph.cpp +++ b/flowgraph.cpp @@ -256,6 +256,12 @@ Ref<FlowGraphNode> FlowGraph::GetNode(size_t i) } +size_t FlowGraph::GetNodeCount() const +{ + return BNGetFlowGraphNodeCount(m_object); +} + + bool FlowGraph::HasNodes() const { return BNFlowGraphHasNodes(m_object); @@ -269,6 +275,18 @@ size_t FlowGraph::AddNode(FlowGraphNode* node) } +void FlowGraph::ReplaceNode(size_t i, FlowGraphNode* newNode) +{ + BNReplaceFlowGraphNode(m_object, i, newNode->GetObject()); +} + + +void FlowGraph::ClearNodes() +{ + BNClearFlowGraphNodes(m_object); +} + + int FlowGraph::GetWidth() const { return BNGetFlowGraphWidth(m_object); @@ -419,6 +437,32 @@ bool FlowGraph::IsOptionSet(BNFlowGraphOption option) } +std::vector<RenderLayer*> FlowGraph::GetRenderLayers() const +{ + size_t count = 0; + BNRenderLayer** layers = BNGetFlowGraphRenderLayers(m_object, &count); + std::vector<RenderLayer*> result; + for (size_t i = 0; i < count; i ++) + { + result.push_back(new CoreRenderLayer(layers[i])); + } + BNFreeRenderLayerList(layers); + return result; +} + + +void FlowGraph::AddRenderLayer(RenderLayer* layer) +{ + BNAddFlowGraphRenderLayer(m_object, layer->GetObject()); +} + + +void FlowGraph::RemoveRenderLayer(RenderLayer* layer) +{ + BNRemoveFlowGraphRenderLayer(m_object, layer->GetObject()); +} + + CoreFlowGraph::CoreFlowGraph(BNFlowGraph* graph) : FlowGraph(graph) { m_queryMode = BNFlowGraphUpdateQueryMode(GetObject()); |
