From 774905f7e870b137509e28a396fdb9f29cac8c97 Mon Sep 17 00:00:00 2001 From: Jeroen Bakker Date: Fri, 9 Oct 2020 07:27:18 +0200 Subject: CleanUp: Introduce `eMeshBatchDirtyMode` enum It used to be an int mode. --- source/blender/blenkernel/BKE_mesh.h | 13 +++------ source/blender/blenkernel/BKE_mesh_types.h | 32 +++++++++++++++++++++++ source/blender/blenkernel/intern/mesh_runtime.c | 4 +-- source/blender/draw/intern/draw_cache_impl.h | 4 ++- source/blender/draw/intern/draw_cache_impl_mesh.c | 2 +- 5 files changed, 41 insertions(+), 14 deletions(-) create mode 100644 source/blender/blenkernel/BKE_mesh_types.h diff --git a/source/blender/blenkernel/BKE_mesh.h b/source/blender/blenkernel/BKE_mesh.h index 42d22cb9f16..a61e453ec52 100644 --- a/source/blender/blenkernel/BKE_mesh.h +++ b/source/blender/blenkernel/BKE_mesh.h @@ -23,6 +23,7 @@ */ /* defines BLI_INLINE */ +#include "BKE_mesh_types.h" #include "BLI_compiler_compat.h" struct BLI_Stack; @@ -684,18 +685,10 @@ void BKE_mesh_wrapper_deferred_finalize(struct Mesh *me_eval, void BKE_mesh_eval_geometry(struct Depsgraph *depsgraph, struct Mesh *mesh); /* Draw Cache */ -enum { - BKE_MESH_BATCH_DIRTY_ALL = 0, - BKE_MESH_BATCH_DIRTY_SELECT, - BKE_MESH_BATCH_DIRTY_SELECT_PAINT, - BKE_MESH_BATCH_DIRTY_SHADING, - BKE_MESH_BATCH_DIRTY_UVEDIT_ALL, - BKE_MESH_BATCH_DIRTY_UVEDIT_SELECT, -}; -void BKE_mesh_batch_cache_dirty_tag(struct Mesh *me, int mode); +void BKE_mesh_batch_cache_dirty_tag(struct Mesh *me, eMeshBatchDirtyMode mode); void BKE_mesh_batch_cache_free(struct Mesh *me); -extern void (*BKE_mesh_batch_cache_dirty_tag_cb)(struct Mesh *me, int mode); +extern void (*BKE_mesh_batch_cache_dirty_tag_cb)(struct Mesh *me, eMeshBatchDirtyMode mode); extern void (*BKE_mesh_batch_cache_free_cb)(struct Mesh *me); /* Inlines */ diff --git a/source/blender/blenkernel/BKE_mesh_types.h b/source/blender/blenkernel/BKE_mesh_types.h new file mode 100644 index 00000000000..aed8c44a031 --- /dev/null +++ b/source/blender/blenkernel/BKE_mesh_types.h @@ -0,0 +1,32 @@ +/* + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * The Original Code is Copyright (C) 2020 by Blender Foundation + * All rights reserved. + */ +#pragma once + +/** \file + * \ingroup bke + */ + +typedef enum eMeshBatchDirtyMode { + BKE_MESH_BATCH_DIRTY_ALL = 0, + BKE_MESH_BATCH_DIRTY_SELECT, + BKE_MESH_BATCH_DIRTY_SELECT_PAINT, + BKE_MESH_BATCH_DIRTY_SHADING, + BKE_MESH_BATCH_DIRTY_UVEDIT_ALL, + BKE_MESH_BATCH_DIRTY_UVEDIT_SELECT, +} eMeshBatchDirtyMode; diff --git a/source/blender/blenkernel/intern/mesh_runtime.c b/source/blender/blenkernel/intern/mesh_runtime.c index b9eb3876dde..150f7f19edc 100644 --- a/source/blender/blenkernel/intern/mesh_runtime.c +++ b/source/blender/blenkernel/intern/mesh_runtime.c @@ -249,10 +249,10 @@ void BKE_mesh_runtime_clear_geometry(Mesh *mesh) * \{ */ /* Draw Engine */ -void (*BKE_mesh_batch_cache_dirty_tag_cb)(Mesh *me, int mode) = NULL; +void (*BKE_mesh_batch_cache_dirty_tag_cb)(Mesh *me, eMeshBatchDirtyMode mode) = NULL; void (*BKE_mesh_batch_cache_free_cb)(Mesh *me) = NULL; -void BKE_mesh_batch_cache_dirty_tag(Mesh *me, int mode) +void BKE_mesh_batch_cache_dirty_tag(Mesh *me, eMeshBatchDirtyMode mode) { if (me->runtime.batch_cache) { BKE_mesh_batch_cache_dirty_tag_cb(me, mode); diff --git a/source/blender/draw/intern/draw_cache_impl.h b/source/blender/draw/intern/draw_cache_impl.h index e5cc18f6e09..438acdca171 100644 --- a/source/blender/draw/intern/draw_cache_impl.h +++ b/source/blender/draw/intern/draw_cache_impl.h @@ -41,6 +41,8 @@ struct PointCloud; struct Volume; struct bGPdata; +#include "BKE_mesh_types.h" + /* Expose via BKE callbacks */ void DRW_mball_batch_cache_dirty_tag(struct MetaBall *mb, int mode); void DRW_mball_batch_cache_validate(struct MetaBall *mb); @@ -50,7 +52,7 @@ void DRW_curve_batch_cache_dirty_tag(struct Curve *cu, int mode); void DRW_curve_batch_cache_validate(struct Curve *cu); void DRW_curve_batch_cache_free(struct Curve *cu); -void DRW_mesh_batch_cache_dirty_tag(struct Mesh *me, int mode); +void DRW_mesh_batch_cache_dirty_tag(struct Mesh *me, eMeshBatchDirtyMode mode); void DRW_mesh_batch_cache_validate(struct Mesh *me); void DRW_mesh_batch_cache_free(struct Mesh *me); diff --git a/source/blender/draw/intern/draw_cache_impl_mesh.c b/source/blender/draw/intern/draw_cache_impl_mesh.c index 66ead0ebcbf..64879f438e3 100644 --- a/source/blender/draw/intern/draw_cache_impl_mesh.c +++ b/source/blender/draw/intern/draw_cache_impl_mesh.c @@ -618,7 +618,7 @@ static void mesh_batch_cache_discard_uvedit_select(MeshBatchCache *cache) cache->batch_ready &= ~MBC_EDITUV; } -void DRW_mesh_batch_cache_dirty_tag(Mesh *me, int mode) +void DRW_mesh_batch_cache_dirty_tag(Mesh *me, eMeshBatchDirtyMode mode) { MeshBatchCache *cache = me->runtime.batch_cache; if (cache == NULL) { -- cgit v1.2.3