[Bf-blender-cvs] [43464c94f4d] master: Cleanup: use cpp new/delete.

Jeroen Bakker noreply at git.blender.org
Tue Jun 8 13:14:42 CEST 2021


Commit: 43464c94f4def8689dd99a9e459f5ff77420d27b
Author: Jeroen Bakker
Date:   Tue Jun 8 13:12:49 2021 +0200
Branches: master
https://developer.blender.org/rB43464c94f4def8689dd99a9e459f5ff77420d27b

Cleanup: use cpp new/delete.

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

M	source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_edituv.cc
M	source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_fdots.cc
M	source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_lines.cc
M	source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_points.cc
M	source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_tris.cc
M	source/blender/gpu/GPU_index_buffer.h

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

diff --git a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_edituv.cc b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_edituv.cc
index 5d9e94dcbcf..69ded192449 100644
--- a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_edituv.cc
+++ b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_edituv.cc
@@ -35,16 +35,23 @@ namespace blender::draw {
 struct MeshExtract_EditUvElem_Data {
   GPUIndexBufBuilder elb;
   bool sync_selection;
+
+  MeshExtract_EditUvElem_Data(const MeshRenderData *mr)
+  {
+    sync_selection = (mr->toolsettings->uv_flag & UV_SYNC_SELECTION) != 0;
+  }
+
+#ifdef WITH_CXX_GUARDEDALLOC
+  MEM_CXX_CLASS_ALLOC_FUNCS("DRW:MeshExtract_EditUvElem_Data")
+#endif
 };
 
 static void *extract_edituv_tris_init(const MeshRenderData *mr,
                                       struct MeshBatchCache *UNUSED(cache),
                                       void *UNUSED(ibo))
 {
-  MeshExtract_EditUvElem_Data *data = static_cast<MeshExtract_EditUvElem_Data *>(
-      MEM_callocN(sizeof(*data), __func__));
+  MeshExtract_EditUvElem_Data *data = new MeshExtract_EditUvElem_Data(mr);
   GPU_indexbuf_init(&data->elb, GPU_PRIM_TRIS, mr->tri_len, mr->loop_len);
-  data->sync_selection = (mr->toolsettings->uv_flag & UV_SYNC_SELECTION) != 0;
   return data;
 }
 
@@ -93,7 +100,7 @@ static void extract_edituv_tris_finish(const MeshRenderData *UNUSED(mr),
   MeshExtract_EditUvElem_Data *data = static_cast<MeshExtract_EditUvElem_Data *>(_data);
   GPUIndexBuf *ibo = static_cast<GPUIndexBuf *>(buf);
   GPU_indexbuf_build_in_place(&data->elb, ibo);
-  MEM_freeN(data);
+  delete data;
 }
 
 constexpr MeshExtract create_extractor_edituv_tris()
@@ -119,10 +126,8 @@ static void *extract_edituv_lines_init(const MeshRenderData *mr,
                                        struct MeshBatchCache *UNUSED(cache),
                                        void *UNUSED(ibo))
 {
-  MeshExtract_EditUvElem_Data *data = static_cast<MeshExtract_EditUvElem_Data *>(
-      MEM_callocN(sizeof(*data), __func__));
+  MeshExtract_EditUvElem_Data *data = new MeshExtract_EditUvElem_Data(mr);
   GPU_indexbuf_init(&data->elb, GPU_PRIM_LINES, mr->loop_len, mr->loop_len);
-  data->sync_selection = (mr->toolsettings->uv_flag & UV_SYNC_SELECTION) != 0;
   return data;
 }
 
@@ -183,7 +188,7 @@ static void extract_edituv_lines_finish(const MeshRenderData *UNUSED(mr),
   MeshExtract_EditUvElem_Data *data = static_cast<MeshExtract_EditUvElem_Data *>(_data);
   GPUIndexBuf *ibo = static_cast<GPUIndexBuf *>(buf);
   GPU_indexbuf_build_in_place(&data->elb, ibo);
-  MEM_freeN(data);
+  delete data;
 }
 
 constexpr MeshExtract create_extractor_edituv_lines()
@@ -209,10 +214,8 @@ static void *extract_edituv_points_init(const MeshRenderData *mr,
                                         struct MeshBatchCache *UNUSED(cache),
                                         void *UNUSED(ibo))
 {
-  MeshExtract_EditUvElem_Data *data = static_cast<MeshExtract_EditUvElem_Data *>(
-      MEM_callocN(sizeof(*data), __func__));
+  MeshExtract_EditUvElem_Data *data = new MeshExtract_EditUvElem_Data(mr);
   GPU_indexbuf_init(&data->elb, GPU_PRIM_POINTS, mr->loop_len, mr->loop_len);
-  data->sync_selection = (mr->toolsettings->uv_flag & UV_SYNC_SELECTION) != 0;
   return data;
 }
 
@@ -268,7 +271,7 @@ static void extract_edituv_points_finish(const MeshRenderData *UNUSED(mr),
   MeshExtract_EditUvElem_Data *data = static_cast<MeshExtract_EditUvElem_Data *>(_data);
   GPUIndexBuf *ibo = static_cast<GPUIndexBuf *>(buf);
   GPU_indexbuf_build_in_place(&data->elb, ibo);
-  MEM_freeN(data);
+  delete data;
 }
 
 constexpr MeshExtract create_extractor_edituv_points()
@@ -294,10 +297,8 @@ static void *extract_edituv_fdots_init(const MeshRenderData *mr,
                                        struct MeshBatchCache *UNUSED(cache),
                                        void *UNUSED(ibo))
 {
-  MeshExtract_EditUvElem_Data *data = static_cast<MeshExtract_EditUvElem_Data *>(
-      MEM_callocN(sizeof(*data), __func__));
+  MeshExtract_EditUvElem_Data *data = new MeshExtract_EditUvElem_Data(mr);
   GPU_indexbuf_init(&data->elb, GPU_PRIM_POINTS, mr->poly_len, mr->poly_len);
-  data->sync_selection = (mr->toolsettings->uv_flag & UV_SYNC_SELECTION) != 0;
   return data;
 }
 
@@ -365,7 +366,7 @@ static void extract_edituv_fdots_finish(const MeshRenderData *UNUSED(mr),
   MeshExtract_EditUvElem_Data *data = static_cast<MeshExtract_EditUvElem_Data *>(_data);
   GPUIndexBuf *ibo = static_cast<GPUIndexBuf *>(buf);
   GPU_indexbuf_build_in_place(&data->elb, ibo);
-  MEM_freeN(data);
+  delete data;
 }
 
 constexpr MeshExtract create_extractor_edituv_fdots()
diff --git a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_fdots.cc b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_fdots.cc
index 9bd918dc9a5..2dfa91d9a87 100644
--- a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_fdots.cc
+++ b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_fdots.cc
@@ -36,7 +36,7 @@ static void *extract_fdots_init(const MeshRenderData *mr,
                                 struct MeshBatchCache *UNUSED(cache),
                                 void *UNUSED(buf))
 {
-  GPUIndexBufBuilder *elb = static_cast<GPUIndexBufBuilder *>(MEM_mallocN(sizeof(*elb), __func__));
+  GPUIndexBufBuilder *elb = new GPUIndexBufBuilder();
   GPU_indexbuf_init(elb, GPU_PRIM_POINTS, mr->poly_len, mr->poly_len);
   return elb;
 }
@@ -93,7 +93,7 @@ static void extract_fdots_finish(const MeshRenderData *UNUSED(mr),
   GPUIndexBufBuilder *elb = static_cast<GPUIndexBufBuilder *>(_userdata);
   GPUIndexBuf *ibo = static_cast<GPUIndexBuf *>(buf);
   GPU_indexbuf_build_in_place(elb, ibo);
-  MEM_freeN(elb);
+  delete elb;
 }
 
 constexpr MeshExtract create_extractor_fdots()
diff --git a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_lines.cc b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_lines.cc
index ccc382c1b06..299c4332573 100644
--- a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_lines.cc
+++ b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_lines.cc
@@ -35,7 +35,7 @@ static void *extract_lines_init(const MeshRenderData *mr,
                                 struct MeshBatchCache *UNUSED(cache),
                                 void *UNUSED(buf))
 {
-  GPUIndexBufBuilder *elb = static_cast<GPUIndexBufBuilder *>(MEM_mallocN(sizeof(*elb), __func__));
+  GPUIndexBufBuilder *elb = new GPUIndexBufBuilder();
   /* Put loose edges at the end. */
   GPU_indexbuf_init(
       elb, GPU_PRIM_LINES, mr->edge_len + mr->edge_loose_len, mr->loop_len + mr->loop_loose_len);
@@ -146,7 +146,7 @@ static void extract_lines_finish(const MeshRenderData *UNUSED(mr),
   GPUIndexBufBuilder *elb = static_cast<GPUIndexBufBuilder *>(data);
   GPUIndexBuf *ibo = static_cast<GPUIndexBuf *>(buf);
   GPU_indexbuf_build_in_place(elb, ibo);
-  MEM_freeN(elb);
+  delete elb;
 }
 
 constexpr MeshExtract create_extractor_lines()
@@ -190,7 +190,7 @@ static void extract_lines_with_lines_loose_finish(const MeshRenderData *mr,
   GPUIndexBuf *ibo = static_cast<GPUIndexBuf *>(buf);
   GPU_indexbuf_build_in_place(elb, ibo);
   extract_lines_loose_subbuffer(mr, cache);
-  MEM_freeN(elb);
+  delete(elb);
 }
 
 constexpr MeshExtract create_extractor_lines_with_lines_loose()
@@ -221,7 +221,7 @@ static void *extract_lines_loose_only_init(const MeshRenderData *mr,
   BLI_assert(buf == cache->final.ibo.lines_loose);
   UNUSED_VARS_NDEBUG(buf);
   extract_lines_loose_subbuffer(mr, cache);
-  return NULL;
+  return nullptr;
 }
 
 constexpr MeshExtract create_extractor_lines_loose_only()
diff --git a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_points.cc b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_points.cc
index d749a3ab8d1..d71d0f78ddc 100644
--- a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_points.cc
+++ b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_points.cc
@@ -36,7 +36,7 @@ static void *extract_points_init(const MeshRenderData *mr,
                                  struct MeshBatchCache *UNUSED(cache),
                                  void *UNUSED(buf))
 {
-  GPUIndexBufBuilder *elb = static_cast<GPUIndexBufBuilder *>(MEM_mallocN(sizeof(*elb), __func__));
+  GPUIndexBufBuilder *elb = new GPUIndexBufBuilder();
   GPU_indexbuf_init(elb, GPU_PRIM_POINTS, mr->vert_len, mr->loop_len + mr->loop_loose_len);
   return elb;
 }
@@ -145,7 +145,7 @@ static void extract_points_finish(const MeshRenderData *UNUSED(mr),
   GPUIndexBufBuilder *elb = static_cast<GPUIndexBufBuilder *>(_userdata);
   GPUIndexBuf *ibo = static_cast<GPUIndexBuf *>(buf);
   GPU_indexbuf_build_in_place(elb, ibo);
-  MEM_freeN(elb);
+  delete elb;
 }
 
 constexpr MeshExtract create_extractor_points()
diff --git a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_tris.cc b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_tris.cc
index 688f04450e9..ca99aa2ee38 100644
--- a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_tris.cc
+++ b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_tris.cc
@@ -35,18 +35,31 @@ struct MeshExtract_Tri_Data {
   GPUIndexBufBuilder elb;
   int *tri_mat_start;
   int *tri_mat_end;
+
+  MeshExtract_Tri_Data(int mat_len)
+  {
+    tri_mat_start = new int[mat_len];
+    tri_mat_end = new int[mat_len];
+  }
+
+  ~MeshExtract_Tri_Data()
+  {
+    delete tri_mat_start;
+    delete tri_mat_end;
+  }
+
+#ifdef WITH_CXX_GUARDEDALLOC
+  MEM_CXX_CLASS_ALLOC_FUNCS("DRW:MeshExtract_Tri_Data")
+#endif
 };
 
 static void *extract_tris_init(const MeshRenderData *mr,
                                struct MeshBatchCache *UNUSED(cache),
                                void *UNUSED(ibo))
 {
-  MeshExtract_Tri_Data *data = static_cast<MeshExtract_Tri_Data *>(
-      MEM_callocN(sizeof(*data), __func__));
+  MeshExtract_Tri_Data *data = new MeshExtract_Tri_Data(mr->mat_len);
 
   size_t mat_tri_idx_size = sizeof(int) * mr->mat_len;
-  data->tri_mat_start = static_cast<int *>(MEM_callocN(mat_tri_idx_size, __func__));
-  data->tri_mat_end = static_cast<int *>(MEM_callocN(mat_tri_idx_size, __func__));
 
   int *mat_tri_len = d

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list