[Bf-blender-cvs] [9f86933f2ec] master: Cleanup: Remove unused states and vars from MemoryBuffer.

Jeroen Bakker noreply at git.blender.org
Fri Mar 19 17:18:40 CET 2021


Commit: 9f86933f2ec64517c88be1748a327269b03d5752
Author: Jeroen Bakker
Date:   Fri Mar 19 16:56:01 2021 +0100
Branches: master
https://developer.blender.org/rB9f86933f2ec64517c88be1748a327269b03d5752

Cleanup: Remove unused states and vars from MemoryBuffer.

===================================================================

M	source/blender/compositor/intern/COM_ExecutionGroup.cc
M	source/blender/compositor/intern/COM_MemoryBuffer.cc
M	source/blender/compositor/intern/COM_MemoryBuffer.h
M	source/blender/compositor/intern/COM_MemoryProxy.cc
M	source/blender/compositor/operations/COM_WriteBufferOperation.cc

===================================================================

diff --git a/source/blender/compositor/intern/COM_ExecutionGroup.cc b/source/blender/compositor/intern/COM_ExecutionGroup.cc
index cf7d6206910..3cedc5da663 100644
--- a/source/blender/compositor/intern/COM_ExecutionGroup.cc
+++ b/source/blender/compositor/intern/COM_ExecutionGroup.cc
@@ -383,7 +383,7 @@ MemoryBuffer *ExecutionGroup::constructConsolidatedMemoryBuffer(MemoryProxy &mem
                                                                 rcti &rect)
 {
   MemoryBuffer *imageBuffer = memoryProxy.getBuffer();
-  MemoryBuffer *result = new MemoryBuffer(&memoryProxy, rect);
+  MemoryBuffer *result = new MemoryBuffer(&memoryProxy, rect, MemoryBufferState::Temporary);
   result->fill_from(*imageBuffer);
   return result;
 }
@@ -460,7 +460,8 @@ MemoryBuffer *ExecutionGroup::allocateOutputBuffer(rcti &rect)
   NodeOperation *operation = this->getOutputOperation();
   if (operation->isWriteBufferOperation()) {
     WriteBufferOperation *writeOperation = (WriteBufferOperation *)operation;
-    MemoryBuffer *buffer = new MemoryBuffer(writeOperation->getMemoryProxy(), rect);
+    MemoryBuffer *buffer = new MemoryBuffer(
+        writeOperation->getMemoryProxy(), rect, MemoryBufferState::Temporary);
     return buffer;
   }
   return nullptr;
diff --git a/source/blender/compositor/intern/COM_MemoryBuffer.cc b/source/blender/compositor/intern/COM_MemoryBuffer.cc
index 4c80472c4de..0b28168720e 100644
--- a/source/blender/compositor/intern/COM_MemoryBuffer.cc
+++ b/source/blender/compositor/intern/COM_MemoryBuffer.cc
@@ -33,27 +33,14 @@ static unsigned int determine_num_channels(DataType datatype)
   }
 }
 
-MemoryBuffer::MemoryBuffer(MemoryProxy *memoryProxy, unsigned int chunkNumber, const rcti &rect)
+MemoryBuffer::MemoryBuffer(MemoryProxy *memoryProxy, const rcti &rect, MemoryBufferState state)
 {
   m_rect = rect;
   this->m_memoryProxy = memoryProxy;
-  this->m_chunkNumber = chunkNumber;
   this->m_num_channels = determine_num_channels(memoryProxy->getDataType());
   this->m_buffer = (float *)MEM_mallocN_aligned(
       sizeof(float) * buffer_len() * this->m_num_channels, 16, "COM_MemoryBuffer");
-  this->m_state = COM_MB_ALLOCATED;
-  this->m_datatype = memoryProxy->getDataType();
-}
-
-MemoryBuffer::MemoryBuffer(MemoryProxy *memoryProxy, const rcti &rect)
-{
-  m_rect = rect;
-  this->m_memoryProxy = memoryProxy;
-  this->m_chunkNumber = -1;
-  this->m_num_channels = determine_num_channels(memoryProxy->getDataType());
-  this->m_buffer = (float *)MEM_mallocN_aligned(
-      sizeof(float) * buffer_len() * this->m_num_channels, 16, "COM_MemoryBuffer");
-  this->m_state = COM_MB_TEMPORARILY;
+  this->m_state = state;
   this->m_datatype = memoryProxy->getDataType();
 }
 
@@ -61,22 +48,22 @@ MemoryBuffer::MemoryBuffer(DataType dataType, const rcti &rect)
 {
   m_rect = rect;
   this->m_memoryProxy = nullptr;
-  this->m_chunkNumber = -1;
   this->m_num_channels = determine_num_channels(dataType);
   this->m_buffer = (float *)MEM_mallocN_aligned(
       sizeof(float) * buffer_len() * this->m_num_channels, 16, "COM_MemoryBuffer");
-  this->m_state = COM_MB_TEMPORARILY;
+  this->m_state = MemoryBufferState::Temporary;
   this->m_datatype = dataType;
 }
 
-MemoryBuffer::MemoryBuffer(const MemoryBuffer &src) : MemoryBuffer(src.m_memoryProxy, src.m_rect)
+MemoryBuffer::MemoryBuffer(const MemoryBuffer &src)
+    : MemoryBuffer(src.m_memoryProxy, src.m_rect, MemoryBufferState::Temporary)
 {
   memcpy(m_buffer, src.m_buffer, buffer_len() * m_num_channels * sizeof(float));
 }
 
 void MemoryBuffer::clear()
 {
-  memset(this->m_buffer, 0, this->buffer_len() * this->m_num_channels * sizeof(float));
+  memset(m_buffer, 0, buffer_len() * m_num_channels * sizeof(float));
 }
 
 float MemoryBuffer::get_max_value() const
diff --git a/source/blender/compositor/intern/COM_MemoryBuffer.h b/source/blender/compositor/intern/COM_MemoryBuffer.h
index fb17167505a..9caf6c0e790 100644
--- a/source/blender/compositor/intern/COM_MemoryBuffer.h
+++ b/source/blender/compositor/intern/COM_MemoryBuffer.h
@@ -31,15 +31,13 @@ class MemoryBuffer;
  * \brief state of a memory buffer
  * \ingroup Memory
  */
-typedef enum MemoryBufferState {
+enum class MemoryBufferState {
   /** \brief memory has been allocated on creator device and CPU machine,
    * but kernel has not been executed */
-  COM_MB_ALLOCATED = 1,
-  /** \brief memory is available for use, content has been created */
-  COM_MB_AVAILABLE = 2,
+  Default = 0,
   /** \brief chunk is consolidated from other chunks. special state.*/
-  COM_MB_TEMPORARILY = 6,
-} MemoryBufferState;
+  Temporary = 6,
+};
 
 typedef enum MemoryBufferExtend {
   COM_MB_CLIP,
@@ -69,12 +67,6 @@ class MemoryBuffer {
    */
   rcti m_rect;
 
-  /**
-   * brief refers to the chunk-number within the execution-group where related to the MemoryProxy
-   * \see memoryProxy
-   */
-  unsigned int m_chunkNumber;
-
   /**
    * \brief state of the buffer
    */
@@ -92,15 +84,10 @@ class MemoryBuffer {
   unsigned int m_num_channels;
 
  public:
-  /**
-   * \brief construct new MemoryBuffer for a chunk
-   */
-  MemoryBuffer(MemoryProxy *memoryProxy, unsigned int chunkNumber, const rcti &rect);
-
   /**
    * \brief construct new temporarily MemoryBuffer for an area
    */
-  MemoryBuffer(MemoryProxy *memoryProxy, const rcti &rect);
+  MemoryBuffer(MemoryProxy *memoryProxy, const rcti &rect, MemoryBufferState state);
 
   /**
    * \brief construct new temporarily MemoryBuffer for an area
@@ -117,14 +104,6 @@ class MemoryBuffer {
    */
   ~MemoryBuffer();
 
-  /**
-   * \brief read the ChunkNumber of this MemoryBuffer
-   */
-  unsigned int getChunkNumber()
-  {
-    return this->m_chunkNumber;
-  }
-
   unsigned int get_num_channels()
   {
     return this->m_num_channels;
@@ -139,14 +118,6 @@ class MemoryBuffer {
     return this->m_buffer;
   }
 
-  /**
-   * \brief after execution the state will be set to available by calling this method
-   */
-  void setCreatedState()
-  {
-    this->m_state = COM_MB_AVAILABLE;
-  }
-
   inline void wrap_pixel(int &x, int &y, MemoryBufferExtend extend_x, MemoryBufferExtend extend_y)
   {
     const int w = getWidth();
@@ -306,7 +277,7 @@ class MemoryBuffer {
    */
   inline bool isTemporarily() const
   {
-    return this->m_state == COM_MB_TEMPORARILY;
+    return this->m_state == MemoryBufferState::Temporary;
   }
 
   /**
diff --git a/source/blender/compositor/intern/COM_MemoryProxy.cc b/source/blender/compositor/intern/COM_MemoryProxy.cc
index 3cd56e9998e..8ef834e1efe 100644
--- a/source/blender/compositor/intern/COM_MemoryProxy.cc
+++ b/source/blender/compositor/intern/COM_MemoryProxy.cc
@@ -33,7 +33,7 @@ void MemoryProxy::allocate(unsigned int width, unsigned int height)
   result.ymin = 0;
   result.ymax = height;
 
-  this->m_buffer = new MemoryBuffer(this, 1, result);
+  this->m_buffer = new MemoryBuffer(this, result, MemoryBufferState::Default);
 }
 
 void MemoryProxy::free()
diff --git a/source/blender/compositor/operations/COM_WriteBufferOperation.cc b/source/blender/compositor/operations/COM_WriteBufferOperation.cc
index 23d0c7f6eac..e2d5c4de4cb 100644
--- a/source/blender/compositor/operations/COM_WriteBufferOperation.cc
+++ b/source/blender/compositor/operations/COM_WriteBufferOperation.cc
@@ -105,7 +105,6 @@ void WriteBufferOperation::executeRegion(rcti *rect, unsigned int /*tileNumber*/
       }
     }
   }
-  memoryBuffer->setCreatedState();
 }
 
 void WriteBufferOperation::executeOpenCLRegion(OpenCLDevice *device,



More information about the Bf-blender-cvs mailing list