[Bf-blender-cvs] [bf27be81924] compositor-full-frame: After merge fixes
Manuel Castilla
noreply at git.blender.org
Fri Jul 23 19:23:12 CEST 2021
Commit: bf27be819241c125e1fff54eea4722f66c51ab65
Author: Manuel Castilla
Date: Thu Jul 22 23:38:16 2021 +0200
Branches: compositor-full-frame
https://developer.blender.org/rBbf27be819241c125e1fff54eea4722f66c51ab65
After merge fixes
===================================================================
M release/datafiles/locale
M release/scripts/addons
M release/scripts/addons_contrib
M source/blender/compositor/CMakeLists.txt
M source/blender/compositor/intern/COM_BufferOperation.cc
M source/blender/compositor/intern/COM_ExecutionModel.cc
M source/blender/compositor/intern/COM_ExecutionModel.h
M source/blender/compositor/intern/COM_FullFrameExecutionModel.cc
M source/blender/compositor/intern/COM_FullFrameExecutionModel.h
M source/blender/compositor/intern/COM_MemoryBuffer.h
M source/blender/compositor/intern/COM_NodeOperation.cc
M source/blender/compositor/intern/COM_NodeOperation.h
M source/blender/compositor/intern/COM_SharedOperationBuffers.cc
M source/blender/compositor/intern/COM_SharedOperationBuffers.h
M source/blender/compositor/intern/COM_TiledExecutionModel.cc
M source/blender/compositor/intern/COM_TiledExecutionModel.h
D source/blender/compositor/intern/COM_buffer_util.cc
D source/blender/compositor/intern/COM_buffer_util.h
M source/blender/compositor/nodes/COM_ImageNode.cc
M source/blender/compositor/operations/COM_ImageOperation.cc
M source/blender/compositor/operations/COM_MultilayerImageOperation.cc
M source/blender/compositor/operations/COM_SetColorOperation.cc
M source/blender/compositor/operations/COM_SetColorOperation.h
M source/blender/compositor/operations/COM_SetValueOperation.cc
M source/blender/compositor/operations/COM_SetValueOperation.h
M source/tools
===================================================================
diff --git a/release/datafiles/locale b/release/datafiles/locale
index 62e82958a76..2cef4877edc 160000
--- a/release/datafiles/locale
+++ b/release/datafiles/locale
@@ -1 +1 @@
-Subproject commit 62e82958a760dad775d9b3387d7fb535fd6de4c6
+Subproject commit 2cef4877edc40875978c4e95322bb5193f5815bf
diff --git a/release/scripts/addons b/release/scripts/addons
index 1adb56d8b01..27fe7f3a4f9 160000
--- a/release/scripts/addons
+++ b/release/scripts/addons
@@ -1 +1 @@
-Subproject commit 1adb56d8b01cf1327f58c6fb8b1ccc8b7efd76ad
+Subproject commit 27fe7f3a4f964b53af436c4da4ddea337eff0c7e
diff --git a/release/scripts/addons_contrib b/release/scripts/addons_contrib
index 788441f2930..5a82baad9f9 160000
--- a/release/scripts/addons_contrib
+++ b/release/scripts/addons_contrib
@@ -1 +1 @@
-Subproject commit 788441f2930465bbfba8f0797b12dcef1d46694d
+Subproject commit 5a82baad9f986722104280e8354a4427d8e9eab1
diff --git a/source/blender/compositor/CMakeLists.txt b/source/blender/compositor/CMakeLists.txt
index 4038e5c08ef..830792a2a48 100644
--- a/source/blender/compositor/CMakeLists.txt
+++ b/source/blender/compositor/CMakeLists.txt
@@ -458,8 +458,6 @@ set(SRC
operations/COM_MixOperation.h
operations/COM_ReadBufferOperation.cc
operations/COM_ReadBufferOperation.h
- operations/COM_ConstantOperation.cc
- operations/COM_ConstantOperation.h
operations/COM_SetColorOperation.cc
operations/COM_SetColorOperation.h
operations/COM_SetValueOperation.cc
diff --git a/source/blender/compositor/intern/COM_BufferOperation.cc b/source/blender/compositor/intern/COM_BufferOperation.cc
index ae587fa87c4..90c97f2a9c7 100644
--- a/source/blender/compositor/intern/COM_BufferOperation.cc
+++ b/source/blender/compositor/intern/COM_BufferOperation.cc
@@ -20,7 +20,7 @@
namespace blender::compositor {
-BufferOperation::BufferOperation(MemoryBuffer *buffer, DataType data_type) : ConstantOperation()
+BufferOperation::BufferOperation(MemoryBuffer *buffer, DataType data_type)
{
buffer_ = buffer;
inflated_buffer_ = nullptr;
diff --git a/source/blender/compositor/intern/COM_ExecutionModel.cc b/source/blender/compositor/intern/COM_ExecutionModel.cc
index 08ec0585739..b75b277e92c 100644
--- a/source/blender/compositor/intern/COM_ExecutionModel.cc
+++ b/source/blender/compositor/intern/COM_ExecutionModel.cc
@@ -20,9 +20,7 @@
namespace blender::compositor {
-ExecutionModel::ExecutionModel(eExecutionModel model,
- CompositorContext &context,
- Vector<NodeOperation *> &operations)
+ExecutionModel::ExecutionModel(CompositorContext &context, Span<NodeOperation *> operations)
: context_(context), operations_(operations)
{
const bNodeTree *node_tree = context_.getbNodeTree();
@@ -39,10 +37,6 @@ ExecutionModel::ExecutionModel(eExecutionModel model,
border_.use_render_border = context.isRendering() && (rd->mode & R_BORDER) &&
!(rd->mode & R_CROP);
border_.render_border = &rd->border;
-
- for (NodeOperation *op : operations) {
- op->set_execution_model(model);
- }
}
} // namespace blender::compositor
diff --git a/source/blender/compositor/intern/COM_ExecutionModel.h b/source/blender/compositor/intern/COM_ExecutionModel.h
index f2ff8f9af28..452861ae4be 100644
--- a/source/blender/compositor/intern/COM_ExecutionModel.h
+++ b/source/blender/compositor/intern/COM_ExecutionModel.h
@@ -56,12 +56,10 @@ class ExecutionModel {
/**
* All operations being executed.
*/
- Vector<NodeOperation *> &operations_;
+ Span<NodeOperation *> operations_;
public:
- ExecutionModel(eExecutionModel model,
- CompositorContext &context,
- Vector<NodeOperation *> &operations);
+ ExecutionModel(CompositorContext &context, Span<NodeOperation *> operations);
virtual ~ExecutionModel()
{
diff --git a/source/blender/compositor/intern/COM_FullFrameExecutionModel.cc b/source/blender/compositor/intern/COM_FullFrameExecutionModel.cc
index 00b14ff18e3..bd3a481d691 100644
--- a/source/blender/compositor/intern/COM_FullFrameExecutionModel.cc
+++ b/source/blender/compositor/intern/COM_FullFrameExecutionModel.cc
@@ -17,16 +17,12 @@
*/
#include "COM_FullFrameExecutionModel.h"
-#include "COM_ConstantFolder.h"
#include "COM_Debug.h"
#include "COM_ExecutionGroup.h"
#include "COM_ReadBufferOperation.h"
#include "COM_ViewerOperation.h"
#include "COM_WorkScheduler.h"
-#include "BLI_map.hh"
-#include "BLI_set.hh"
-
#include "BLT_translation.h"
#ifdef WITH_CXX_GUARDEDALLOC
@@ -37,8 +33,8 @@ namespace blender::compositor {
FullFrameExecutionModel::FullFrameExecutionModel(CompositorContext &context,
SharedOperationBuffers &shared_buffers,
- Vector<NodeOperation *> &operations)
- : ExecutionModel(eExecutionModel::FullFrame, context, operations),
+ Span<NodeOperation *> operations)
+ : ExecutionModel(context, operations),
active_buffers_(shared_buffers),
num_operations_finished_(0)
{
@@ -91,6 +87,9 @@ Vector<MemoryBuffer *> FullFrameExecutionModel::get_input_buffers(NodeOperation
MemoryBuffer *FullFrameExecutionModel::create_operation_buffer(NodeOperation *op)
{
+ rcti op_rect;
+ BLI_rcti_init(&op_rect, 0, op->getWidth(), 0, op->getHeight());
+
const DataType data_type = op->getOutputSocket(0)->getDataType();
const bool is_a_single_elem = op->get_flags().is_constant_operation;
return new MemoryBuffer(data_type, op_rect, is_a_single_elem);
diff --git a/source/blender/compositor/intern/COM_FullFrameExecutionModel.h b/source/blender/compositor/intern/COM_FullFrameExecutionModel.h
index f2151206864..f75d4f1afdc 100644
--- a/source/blender/compositor/intern/COM_FullFrameExecutionModel.h
+++ b/source/blender/compositor/intern/COM_FullFrameExecutionModel.h
@@ -20,9 +20,6 @@
#include "COM_ExecutionModel.h"
-#include "BLI_map.hh"
-#include "BLI_set.hh"
-
#ifdef WITH_CXX_GUARDEDALLOC
# include "MEM_guardedalloc.h"
#endif
diff --git a/source/blender/compositor/intern/COM_MemoryBuffer.h b/source/blender/compositor/intern/COM_MemoryBuffer.h
index 9f68d508b2b..048ed4c5d6e 100644
--- a/source/blender/compositor/intern/COM_MemoryBuffer.h
+++ b/source/blender/compositor/intern/COM_MemoryBuffer.h
@@ -130,13 +130,6 @@ class MemoryBuffer {
MemoryBuffer(float *buffer, int num_channels, const rcti &rect, bool is_a_single_elem = false);
- /**
- * Construct MemoryBuffer from an existent float buffer. MemoryBuffer is not responsible for
- * freeing given buffer.
- */
- MemoryBuffer(
- float *buffer, int num_channels, int width, int height, bool is_a_single_elem = false);
-
/**
* Copy constructor
*/
diff --git a/source/blender/compositor/intern/COM_NodeOperation.cc b/source/blender/compositor/intern/COM_NodeOperation.cc
index 43710e62496..4e115cb3f2f 100644
--- a/source/blender/compositor/intern/COM_NodeOperation.cc
+++ b/source/blender/compositor/intern/COM_NodeOperation.cc
@@ -38,32 +38,9 @@ NodeOperation::NodeOperation()
this->m_resolutionInputSocketIndex = 0;
this->m_width = 0;
this->m_height = 0;
- offset_x_ = 0;
- offset_y_ = 0;
this->m_btree = nullptr;
}
-/**
- * Get operation canvas area within whole compositing canvas.
- */
-rcti NodeOperation::get_canvas_area() const
-{
- rcti rect;
- BLI_rcti_init(&rect, offset_x_, offset_x_ + m_width, offset_y_, offset_y_ + m_height);
- return rect;
-}
-
-/**
- * Set operation canvas area within whole compositing canvas.
- */
-void NodeOperation::set_canvas_area(const rcti &rect)
-{
- offset_x_ = rect.xmin;
- offset_y_ = rect.ymin;
- m_width = BLI_rcti_size_x(&rect);
- m_height = BLI_rcti_size_y(&rect);
-}
-
NodeOperationOutput *NodeOperation::getOutputSocket(unsigned int index)
{
return &m_outputs[index];
@@ -288,10 +265,8 @@ void NodeOperation::render_full_frame_fallback(MemoryBuffer *output_buf,
initExecution();
const bool is_output_operation = getNumberOfOutputSockets() == 0;
if (!is_output_operation && output_buf->is_a_single_elem()) {
- int x = areas[0].xmin;
- int y = areas[0].ymin;
- float *output_elem = output_buf->get_elem(x, y);
- readSampled(output_elem, x, y, PixelSampler::Nearest);
+ float *output_elem = output_buf->get_elem(0, 0);
+ readSampled(output_elem, 0, 0, PixelSampler::Nearest);
}
else {
for (const rcti &rect : areas) {
@@ -364,8 +339,8 @@ void NodeOperation::remove_buffers_and_restore_original_inputs(
BLI_assert(typeid(*buffer_op) == typeid(BufferOperation));
buffer_op->deinitExecution();
NodeOperationInput *input_socket = getInputSocket(i);
- delete &input_socket->getLink()->getOperation();
input_socket->setLink(original_inputs_links[i]);
+ delete buffer_op;
}
}
diff --git a/source/blender/compositor/intern/COM_NodeOperation.h b/source/blender/compositor/intern/COM_NodeOperation.h
index 9667d82c289..fb9ec1e7a83 100644
--- a/source/blender/compositor/intern/COM_NodeOperation.h
+++ b/source/blender/compositor/intern/COM_NodeOperation.h
@@ -192,8 +192,8 @@ struct NodeOperationFlags {
bool open_cl : 1;
/**
- * TODO: Remove this flag and SingleThreadedOperation if tiled implemention is removed.
- * Full-frame implemention doesn't need it.
+ * TODO: Remove this flag and #SingleThreadedOperation if tiled implementation is removed.
+ * Full-frame implementation doesn't need it.
*/
bool single_threaded : 1;
@@ -310,8 +310,6 @@ class NodeOperation {
const bNodeTree *m_btree;
protected:
- eExecutionModel execution_model_;
-
/**
* Compositor execution model.
*/
@@ -327,16 +325,6 @@ class NodeOperation {
*/
unsigned int m_height;
- /**
- * Operation canvas x coordinate within whole compositing canvas.
- */
- int offset_x_;
-
- /**
- * Operation canvas y coordinate within whole compositing canvas.
- */
- int offset_y_;
-
/**
* Flags how to evaluate this operation.
*/
@@ -379,19 +367,6 @@ class NodeOperation {
return flags;
}
- eExecutionModel get_execution_model() const
- {
- return execution_model_;
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list