[Bf-blender-cvs] [ae3263e5253] master: DrawEngine: Clean up

Jeroen Bakker noreply at git.blender.org
Tue Feb 25 07:49:53 CET 2020


Commit: ae3263e52532997a2149dfff67cec2dbcc9e465a
Author: Jeroen Bakker
Date:   Tue Feb 25 07:47:35 2020 +0100
Branches: master
https://developer.blender.org/rBae3263e52532997a2149dfff67cec2dbcc9e465a

DrawEngine: Clean up

Put DefaultFramebufferList and DefaultTextureList into an own header
file. These structs were private, but also used by the window manager
and gpu package. The previous implementation we needed to keep these
structs in sync.

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

M	source/blender/draw/DRW_engine.h
A	source/blender/draw/DRW_engine_types.h
M	source/blender/draw/intern/DRW_render.h

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

diff --git a/source/blender/draw/DRW_engine.h b/source/blender/draw/DRW_engine.h
index 647d8a0841f..2462603632f 100644
--- a/source/blender/draw/DRW_engine.h
+++ b/source/blender/draw/DRW_engine.h
@@ -48,23 +48,7 @@ struct bContext;
 struct rcti;
 
 #include "DNA_object_enums.h"
-
-/* Buffer and textures used by the viewport by default */
-typedef struct DefaultFramebufferList {
-  struct GPUFrameBuffer *default_fb;
-  struct GPUFrameBuffer *overlay_fb;
-  struct GPUFrameBuffer *in_front_fb;
-  struct GPUFrameBuffer *color_only_fb;
-  struct GPUFrameBuffer *depth_only_fb;
-  struct GPUFrameBuffer *overlay_only_fb;
-} DefaultFramebufferList;
-
-typedef struct DefaultTextureList {
-  struct GPUTexture *color;
-  struct GPUTexture *color_overlay;
-  struct GPUTexture *depth;
-  struct GPUTexture *depth_in_front;
-} DefaultTextureList;
+#include "DRW_engine_types.h"
 
 void DRW_engines_register(void);
 void DRW_engines_free(void);
diff --git a/source/blender/draw/DRW_engine_types.h b/source/blender/draw/DRW_engine_types.h
new file mode 100644
index 00000000000..dd56f87182c
--- /dev/null
+++ b/source/blender/draw/DRW_engine_types.h
@@ -0,0 +1,51 @@
+/*
+ * 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.
+ *
+ * Copyright 2016, Blender Foundation.
+ */
+
+/** \file
+ * \ingroup draw
+ */
+
+#ifndef __DRW_ENGINE_TYPES_H__
+#define __DRW_ENGINE_TYPES_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Buffer and textures used by the viewport by default */
+typedef struct DefaultFramebufferList {
+  struct GPUFrameBuffer *default_fb;
+  struct GPUFrameBuffer *overlay_fb;
+  struct GPUFrameBuffer *in_front_fb;
+  struct GPUFrameBuffer *color_only_fb;
+  struct GPUFrameBuffer *depth_only_fb;
+  struct GPUFrameBuffer *overlay_only_fb;
+} DefaultFramebufferList;
+
+typedef struct DefaultTextureList {
+  struct GPUTexture *color;
+  struct GPUTexture *color_overlay;
+  struct GPUTexture *depth;
+  struct GPUTexture *depth_in_front;
+} DefaultTextureList;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __DRW_ENGINE_H__ */
diff --git a/source/blender/draw/intern/DRW_render.h b/source/blender/draw/intern/DRW_render.h
index 60c6e66bfe9..4f7554006cb 100644
--- a/source/blender/draw/intern/DRW_render.h
+++ b/source/blender/draw/intern/DRW_render.h
@@ -25,6 +25,8 @@
 #ifndef __DRW_RENDER_H__
 #define __DRW_RENDER_H__
 
+#include "DRW_engine_types.h"
+
 #include "BLI_listbase.h"
 #include "BLI_math_matrix.h"
 #include "BLI_math_vector.h"
@@ -61,8 +63,6 @@
 
 #include "DEG_depsgraph.h"
 
-struct DefaultFramebufferList;
-struct DefaultTextureList;
 struct GPUBatch;
 struct GPUFrameBuffer;
 struct GPUMaterial;
@@ -133,25 +133,6 @@ typedef struct DrawEngineType {
                           const struct rcti *rect);
 } DrawEngineType;
 
-#ifndef __DRW_ENGINE_H__
-/* Buffer and textures used by the viewport by default */
-typedef struct DefaultFramebufferList {
-  struct GPUFrameBuffer *default_fb;
-  struct GPUFrameBuffer *overlay_fb;
-  struct GPUFrameBuffer *in_front_fb;
-  struct GPUFrameBuffer *color_only_fb;
-  struct GPUFrameBuffer *depth_only_fb;
-  struct GPUFrameBuffer *overlay_only_fb;
-} DefaultFramebufferList;
-
-typedef struct DefaultTextureList {
-  struct GPUTexture *color;
-  struct GPUTexture *color_overlay;
-  struct GPUTexture *depth;
-  struct GPUTexture *depth_in_front;
-} DefaultTextureList;
-#endif
-
 /* Textures */
 typedef enum {
   DRW_TEX_FILTER = (1 << 0),



More information about the Bf-blender-cvs mailing list