Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen Bakker <jeroen@blender.org>2020-02-25 09:47:35 +0300
committerJeroen Bakker <jeroen@blender.org>2020-02-25 09:47:35 +0300
commitae3263e52532997a2149dfff67cec2dbcc9e465a (patch)
treea12f96a261f4ace3c25033db4dae69bc42f515d1
parent9e45468835bacca145028dafad9be33accad5bed (diff)
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.
-rw-r--r--source/blender/draw/DRW_engine.h18
-rw-r--r--source/blender/draw/DRW_engine_types.h51
-rw-r--r--source/blender/draw/intern/DRW_render.h23
3 files changed, 54 insertions, 38 deletions
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),