[Bf-blender-cvs] [260e50ed82c] master: Cleanup: Use ref to read from encapsuled data.
Jeroen Bakker
noreply at git.blender.org
Fri Mar 19 17:18:39 CET 2021
Commit: 260e50ed82ce015224c796a6354d2b4b18422b6f
Author: Jeroen Bakker
Date: Fri Mar 19 15:40:36 2021 +0100
Branches: master
https://developer.blender.org/rB260e50ed82ce015224c796a6354d2b4b18422b6f
Cleanup: Use ref to read from encapsuled data.
MemoryBuffer->getRect was returning a ptr.
===================================================================
M source/blender/compositor/intern/COM_MemoryBuffer.cc
M source/blender/compositor/intern/COM_MemoryBuffer.h
M source/blender/compositor/intern/COM_OpenCLDevice.cc
M source/blender/compositor/operations/COM_BokehBlurOperation.cc
M source/blender/compositor/operations/COM_DilateErodeOperation.cc
M source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cc
M source/blender/compositor/operations/COM_GaussianAlphaYBlurOperation.cc
M source/blender/compositor/operations/COM_GaussianBokehBlurOperation.cc
M source/blender/compositor/operations/COM_GaussianXBlurOperation.cc
M source/blender/compositor/operations/COM_GaussianYBlurOperation.cc
M source/blender/compositor/operations/COM_GlareFogGlowOperation.cc
M source/blender/compositor/operations/COM_GlareStreaksOperation.cc
M source/blender/compositor/operations/COM_SunBeamsOperation.cc
===================================================================
diff --git a/source/blender/compositor/intern/COM_MemoryBuffer.cc b/source/blender/compositor/intern/COM_MemoryBuffer.cc
index d69fe238e61..46c99623244 100644
--- a/source/blender/compositor/intern/COM_MemoryBuffer.cc
+++ b/source/blender/compositor/intern/COM_MemoryBuffer.cc
@@ -47,7 +47,7 @@ int MemoryBuffer::getHeight() const
return this->m_height;
}
-MemoryBuffer::MemoryBuffer(MemoryProxy *memoryProxy, unsigned int chunkNumber, rcti &rect)
+MemoryBuffer::MemoryBuffer(MemoryProxy *memoryProxy, unsigned int chunkNumber, const rcti &rect)
{
m_rect = rect;
this->m_width = BLI_rcti_size_x(&this->m_rect);
@@ -61,7 +61,7 @@ MemoryBuffer::MemoryBuffer(MemoryProxy *memoryProxy, unsigned int chunkNumber, r
this->m_datatype = memoryProxy->getDataType();
}
-MemoryBuffer::MemoryBuffer(MemoryProxy *memoryProxy, rcti &rect)
+MemoryBuffer::MemoryBuffer(MemoryProxy *memoryProxy, const rcti &rect)
{
m_rect = rect;
this->m_width = BLI_rcti_size_x(&this->m_rect);
@@ -74,7 +74,7 @@ MemoryBuffer::MemoryBuffer(MemoryProxy *memoryProxy, rcti &rect)
this->m_state = COM_MB_TEMPORARILY;
this->m_datatype = memoryProxy->getDataType();
}
-MemoryBuffer::MemoryBuffer(DataType dataType, rcti &rect)
+MemoryBuffer::MemoryBuffer(DataType dataType, const rcti &rect)
{
m_rect = rect;
this->m_width = BLI_rcti_size_x(&this->m_rect);
diff --git a/source/blender/compositor/intern/COM_MemoryBuffer.h b/source/blender/compositor/intern/COM_MemoryBuffer.h
index 3242f4a3d75..b80124ca136 100644
--- a/source/blender/compositor/intern/COM_MemoryBuffer.h
+++ b/source/blender/compositor/intern/COM_MemoryBuffer.h
@@ -98,17 +98,17 @@ class MemoryBuffer {
/**
* \brief construct new MemoryBuffer for a chunk
*/
- MemoryBuffer(MemoryProxy *memoryProxy, unsigned int chunkNumber, rcti &rect);
+ MemoryBuffer(MemoryProxy *memoryProxy, unsigned int chunkNumber, const rcti &rect);
/**
* \brief construct new temporarily MemoryBuffer for an area
*/
- MemoryBuffer(MemoryProxy *memoryProxy, rcti &rect);
+ MemoryBuffer(MemoryProxy *memoryProxy, const rcti &rect);
/**
* \brief construct new temporarily MemoryBuffer for an area
*/
- MemoryBuffer(DataType datatype, rcti &rect);
+ MemoryBuffer(DataType datatype, const rcti &rect);
/**
* \brief destructor
@@ -319,9 +319,9 @@ class MemoryBuffer {
/**
* \brief get the rect of this MemoryBuffer
*/
- rcti *getRect()
+ const rcti &get_rect() const
{
- return &this->m_rect;
+ return this->m_rect;
}
/**
diff --git a/source/blender/compositor/intern/COM_OpenCLDevice.cc b/source/blender/compositor/intern/COM_OpenCLDevice.cc
index 838376d2e63..d5aed2052ac 100644
--- a/source/blender/compositor/intern/COM_OpenCLDevice.cc
+++ b/source/blender/compositor/intern/COM_OpenCLDevice.cc
@@ -152,8 +152,8 @@ void OpenCLDevice::COM_clAttachMemoryBufferOffsetToKernelParameter(cl_kernel ker
{
if (offsetIndex != -1) {
cl_int error;
- rcti *rect = memoryBuffer->getRect();
- cl_int2 offset = {{rect->xmin, rect->ymin}};
+ const rcti &rect = memoryBuffer->get_rect();
+ cl_int2 offset = {{rect.xmin, rect.ymin}};
error = clSetKernelArg(kernel, offsetIndex, sizeof(cl_int2), &offset);
if (error != CL_SUCCESS) {
diff --git a/source/blender/compositor/operations/COM_BokehBlurOperation.cc b/source/blender/compositor/operations/COM_BokehBlurOperation.cc
index b0ab3906b60..7bb8cd49bfc 100644
--- a/source/blender/compositor/operations/COM_BokehBlurOperation.cc
+++ b/source/blender/compositor/operations/COM_BokehBlurOperation.cc
@@ -80,10 +80,11 @@ void BokehBlurOperation::executePixel(float output[4], int x, int y, void *data)
if (tempBoundingBox[0] > 0.0f) {
float multiplier_accum[4] = {0.0f, 0.0f, 0.0f, 0.0f};
MemoryBuffer *inputBuffer = (MemoryBuffer *)data;
+ const rcti &input_rect = inputBuffer->get_rect();
float *buffer = inputBuffer->getBuffer();
int bufferwidth = inputBuffer->getWidth();
- int bufferstartx = inputBuffer->getRect()->xmin;
- int bufferstarty = inputBuffer->getRect()->ymin;
+ int bufferstartx = input_rect.xmin;
+ int bufferstarty = input_rect.ymin;
const float max_dim = MAX2(this->getWidth(), this->getHeight());
int pixelSize = this->m_size * max_dim / 100.0f;
zero_v4(color_accum);
@@ -99,10 +100,10 @@ void BokehBlurOperation::executePixel(float output[4], int x, int y, void *data)
int maxy = y + pixelSize;
int minx = x - pixelSize;
int maxx = x + pixelSize;
- miny = MAX2(miny, inputBuffer->getRect()->ymin);
- minx = MAX2(minx, inputBuffer->getRect()->xmin);
- maxy = MIN2(maxy, inputBuffer->getRect()->ymax);
- maxx = MIN2(maxx, inputBuffer->getRect()->xmax);
+ miny = MAX2(miny, input_rect.ymin);
+ minx = MAX2(minx, input_rect.xmin);
+ maxy = MIN2(maxy, input_rect.ymax);
+ maxx = MIN2(maxx, input_rect.xmax);
int step = getStep();
int offsetadd = getOffsetAdd() * COM_NUM_CHANNELS_COLOR;
diff --git a/source/blender/compositor/operations/COM_DilateErodeOperation.cc b/source/blender/compositor/operations/COM_DilateErodeOperation.cc
index dc8792fc59a..33ddf9187b0 100644
--- a/source/blender/compositor/operations/COM_DilateErodeOperation.cc
+++ b/source/blender/compositor/operations/COM_DilateErodeOperation.cc
@@ -70,19 +70,19 @@ void DilateErodeThresholdOperation::executePixel(float output[4], int x, int y,
MemoryBuffer *inputBuffer = (MemoryBuffer *)data;
float *buffer = inputBuffer->getBuffer();
- rcti *rect = inputBuffer->getRect();
- const int minx = MAX2(x - this->m_scope, rect->xmin);
- const int miny = MAX2(y - this->m_scope, rect->ymin);
- const int maxx = MIN2(x + this->m_scope, rect->xmax);
- const int maxy = MIN2(y + this->m_scope, rect->ymax);
- const int bufferWidth = BLI_rcti_size_x(rect);
+ const rcti &input_rect = inputBuffer->get_rect();
+ const int minx = MAX2(x - this->m_scope, input_rect.xmin);
+ const int miny = MAX2(y - this->m_scope, input_rect.ymin);
+ const int maxx = MIN2(x + this->m_scope, input_rect.xmax);
+ const int maxy = MIN2(y + this->m_scope, input_rect.ymax);
+ const int bufferWidth = inputBuffer->getWidth();
int offset;
inputBuffer->read(inputValue, x, y);
if (inputValue[0] > sw) {
for (int yi = miny; yi < maxy; yi++) {
const float dy = yi - y;
- offset = ((yi - rect->ymin) * bufferWidth + (minx - rect->xmin));
+ offset = ((yi - input_rect.ymin) * bufferWidth + (minx - input_rect.xmin));
for (int xi = minx; xi < maxx; xi++) {
if (buffer[offset] < sw) {
const float dx = xi - x;
@@ -97,7 +97,7 @@ void DilateErodeThresholdOperation::executePixel(float output[4], int x, int y,
else {
for (int yi = miny; yi < maxy; yi++) {
const float dy = yi - y;
- offset = ((yi - rect->ymin) * bufferWidth + (minx - rect->xmin));
+ offset = ((yi - input_rect.ymin) * bufferWidth + (minx - input_rect.xmin));
for (int xi = minx; xi < maxx; xi++) {
if (buffer[offset] > sw) {
const float dx = xi - x;
@@ -190,19 +190,19 @@ void DilateDistanceOperation::executePixel(float output[4], int x, int y, void *
MemoryBuffer *inputBuffer = (MemoryBuffer *)data;
float *buffer = inputBuffer->getBuffer();
- rcti *rect = inputBuffer->getRect();
- const int minx = MAX2(x - this->m_scope, rect->xmin);
- const int miny = MAX2(y - this->m_scope, rect->ymin);
- const int maxx = MIN2(x + this->m_scope, rect->xmax);
- const int maxy = MIN2(y + this->m_scope, rect->ymax);
- const int bufferWidth = BLI_rcti_size_x(rect);
+ const rcti &input_rect = inputBuffer->get_rect();
+ const int minx = MAX2(x - this->m_scope, input_rect.xmin);
+ const int miny = MAX2(y - this->m_scope, input_rect.ymin);
+ const int maxx = MIN2(x + this->m_scope, input_rect.xmax);
+ const int maxy = MIN2(y + this->m_scope, input_rect.ymax);
+ const int bufferWidth = inputBuffer->getWidth();
int offset;
float value = 0.0f;
for (int yi = miny; yi < maxy; yi++) {
const float dy = yi - y;
- offset = ((yi - rect->ymin) * bufferWidth + (minx - rect->xmin));
+ offset = ((yi - input_rect.ymin) * bufferWidth + (minx - input_rect.xmin));
for (int xi = minx; xi < maxx; xi++) {
const float dx = xi - x;
const float dis = dx * dx + dy * dy;
@@ -269,19 +269,19 @@ void ErodeDistanceOperation::executePixel(float output[4], int x, int y, void *d
MemoryBuffer *inputBuffer = (MemoryBuffer *)data;
float *buffer = inputBuffer->getBuffer();
- rcti *rect = inputBuffer->getRect();
- const int minx = MAX2(x - this->m_scope, rect->xmin);
- const int miny = MAX2(y - this->m_scope, rect->ymin);
- const int maxx = MIN2(x + this->m_scope, rect->xmax);
- const int maxy = MIN2(y + this->m_scope, rect->ymax);
- const int bufferWidth = BLI_rcti_size_x(rect);
+ const rcti &input_rect = inputBuffer->get_rect();
+ const int minx = MAX2(x - this->m_scope, input_rect.xmin);
+ const int miny = MAX2(y - this->m_scope, input_rect.ymin);
+ const int maxx = MIN2(x + this->m_scope, input_rect.xmax);
+ const int maxy = MIN2(y + this->m_scope, input_rect.ymax);
+ const int bufferWidth = inputBuffer->getWidth();
int offset;
float value = 1.0f;
for (int yi = miny; yi < maxy; yi++) {
const float dy = yi - y;
- offset = ((yi - rect->ymin) * bufferWidth + (minx - rect->xmin));
+ offset = ((yi - input_rect.ymin) * bufferWidth + (minx - input_rect.xmin));
for (int xi = minx; xi < maxx; xi++) {
const float dx = xi - x;
const float dis = dx * dx + dy * dy;
diff --git a/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cc b/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cc
index 1d3cce45e10..1f03bb8d9cb 100644
--- a/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cc
+++ b/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cc
@@ -87,10 +87,11 @@ void GaussianAlphaXBlurOperation::executePixel(float output[4], int x, int y, vo
MemoryBuffer *inputBuffer = (MemoryBuffer *)data;
float *buffer = inputBuffer->getBuffer();
int bufferwidth = inputBuffer->getWidth();
- int bufferstartx = inputBuffer->
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list