Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/compositor/intern/COM_NodeOperationBuilder.h')
-rw-r--r--source/blender/compositor/intern/COM_NodeOperationBuilder.h30
1 files changed, 23 insertions, 7 deletions
diff --git a/source/blender/compositor/intern/COM_NodeOperationBuilder.h b/source/blender/compositor/intern/COM_NodeOperationBuilder.h
index 8f55574fa88..b2fb822af25 100644
--- a/source/blender/compositor/intern/COM_NodeOperationBuilder.h
+++ b/source/blender/compositor/intern/COM_NodeOperationBuilder.h
@@ -24,6 +24,8 @@
#include "COM_NodeGraph.h"
+namespace blender::compositor {
+
class CompositorContext;
class Node;
@@ -66,14 +68,14 @@ class NodeOperationBuilder {
const CompositorContext *m_context;
NodeGraph m_graph;
- blender::Vector<NodeOperation *> m_operations;
- blender::Vector<Link> m_links;
- blender::Vector<ExecutionGroup *> m_groups;
+ Vector<NodeOperation *> m_operations;
+ Vector<Link> m_links;
+ Vector<ExecutionGroup *> m_groups;
/** Maps operation inputs to node inputs */
- blender::Map<NodeOperationInput *, NodeInput *> m_input_map;
+ Map<NodeOperationInput *, NodeInput *> m_input_map;
/** Maps node outputs to operation outputs */
- blender::Map<NodeOutput *, NodeOperationOutput *> m_output_map;
+ Map<NodeOutput *, NodeOperationOutput *> m_output_map;
Node *m_current_node;
@@ -85,7 +87,6 @@ class NodeOperationBuilder {
public:
NodeOperationBuilder(const CompositorContext *context, bNodeTree *b_nodetree);
- ~NodeOperationBuilder();
const CompositorContext &context() const
{
@@ -117,6 +118,16 @@ class NodeOperationBuilder {
return m_active_viewer;
}
+ const Vector<NodeOperation *> &get_operations() const
+ {
+ return m_operations;
+ }
+
+ const Vector<Link> &get_links() const
+ {
+ return m_links;
+ }
+
protected:
/** Add datatype conversion where needed */
void add_datatype_conversions();
@@ -132,7 +143,7 @@ class NodeOperationBuilder {
void determineResolutions();
/** Helper function to store connected inputs for replacement */
- blender::Vector<NodeOperationInput *> cache_output_links(NodeOperationOutput *output) const;
+ Vector<NodeOperationInput *> cache_output_links(NodeOperationOutput *output) const;
/** Find a connected write buffer operation to an OpOutput */
WriteBufferOperation *find_attached_write_buffer_operation(NodeOperationOutput *output) const;
/** Add read/write buffer operations around complex operations */
@@ -157,3 +168,8 @@ class NodeOperationBuilder {
MEM_CXX_CLASS_ALLOC_FUNCS("COM:NodeCompilerImpl")
#endif
};
+
+std::ostream &operator<<(std::ostream &os, const NodeOperationBuilder &builder);
+std::ostream &operator<<(std::ostream &os, const NodeOperationBuilder::Link &link);
+
+} // namespace blender::compositor