[gtk/wip/otte/nodeeditor2: 143/143] gsk: Export gsk_vulkan_renderer_new()



commit 7638a88ffe7f8f98f008620030f54316c8b6e957
Author: Benjamin Otte <otte redhat com>
Date:   Thu May 2 02:57:23 2019 +0200

    gsk: Export gsk_vulkan_renderer_new()

 docs/reference/gsk/gsk4-sections.txt  |  1 +
 gsk/gsk.h                             |  1 +
 gsk/gskrenderer.c                     |  2 +-
 gsk/vulkan/gskvulkanrenderer.c        | 19 +++++++++++++++++++
 gsk/vulkan/gskvulkanrendererprivate.h | 17 +----------------
 5 files changed, 23 insertions(+), 17 deletions(-)
---
diff --git a/docs/reference/gsk/gsk4-sections.txt b/docs/reference/gsk/gsk4-sections.txt
index 8f94b029db..05b3307886 100644
--- a/docs/reference/gsk/gsk4-sections.txt
+++ b/docs/reference/gsk/gsk4-sections.txt
@@ -10,6 +10,7 @@ gsk_renderer_render_texture
 gsk_renderer_new_for_surface
 gsk_gl_renderer_new
 gsk_cairo_renderer_new
+gsk_vulkan_renderer_new
 gsk_broadway_renderer_new
 <SUBSECTION Standard>
 GSK_IS_RENDERER
diff --git a/gsk/gsk.h b/gsk/gsk.h
index b8f6d58ee9..b1ae837946 100644
--- a/gsk/gsk.h
+++ b/gsk/gsk.h
@@ -29,6 +29,7 @@
 #include <gsk/gskcairorenderer.h>
 #include <gsk/gl/gskglrenderer.h>
 #include <gsk/broadway/gskbroadwayrenderer.h>
+#include <gsk/vulkan/gskvulkanrenderer.h>
 
 #include <gsk/gsktypes.h>
 #include <gsk/gskenumtypes.h>
diff --git a/gsk/gskrenderer.c b/gsk/gskrenderer.c
index 73c3247b19..6598bf479a 100644
--- a/gsk/gskrenderer.c
+++ b/gsk/gskrenderer.c
@@ -58,7 +58,7 @@
 #include "broadway/gskbroadwayrenderer.h"
 #endif
 #ifdef GDK_RENDERING_VULKAN
-#include "vulkan/gskvulkanrendererprivate.h"
+#include "vulkan/gskvulkanrenderer.h"
 #endif
 
 typedef struct
diff --git a/gsk/vulkan/gskvulkanrenderer.c b/gsk/vulkan/gskvulkanrenderer.c
index 80bb845b37..e84efcdb47 100644
--- a/gsk/vulkan/gskvulkanrenderer.c
+++ b/gsk/vulkan/gskvulkanrenderer.c
@@ -364,3 +364,22 @@ gsk_vulkan_renderer_get_cached_glyph (GskVulkanRenderer *self,
 {
   return gsk_vulkan_glyph_cache_lookup (self->glyph_cache, FALSE, font, glyph, scale);
 }
+
+/**
+ * gsk_vulkan_renderer_new:
+ *
+ * Creates a new Vulkan renderer.
+ *
+ * The Vulkan renderer is a renderer that uses the Vulkan library for
+ * rendering.
+ *
+ * This function is only available when GTK was compiled with Vulkan
+ * support.
+ *
+ * Returns: a new Vulkan renderer
+ **/
+GskRenderer *
+gsk_vulkan_renderer_new (void)
+{
+  return g_object_new (GSK_TYPE_VULKAN_RENDERER, NULL);
+}
diff --git a/gsk/vulkan/gskvulkanrendererprivate.h b/gsk/vulkan/gskvulkanrendererprivate.h
index 1e7d78a7ed..d492a85b1f 100644
--- a/gsk/vulkan/gskvulkanrendererprivate.h
+++ b/gsk/vulkan/gskvulkanrendererprivate.h
@@ -1,26 +1,11 @@
 #ifndef __GSK_VULKAN_RENDERER_PRIVATE_H__
 #define __GSK_VULKAN_RENDERER_PRIVATE_H__
 
-#include <vulkan/vulkan.h>
-#include <gsk/gskrenderer.h>
-
+#include "gskvulkanrenderer.h"
 #include "gskvulkanimageprivate.h"
 
 G_BEGIN_DECLS
 
-#define GSK_TYPE_VULKAN_RENDERER (gsk_vulkan_renderer_get_type ())
-
-#define GSK_VULKAN_RENDERER(obj)                 (G_TYPE_CHECK_INSTANCE_CAST ((obj), 
GSK_TYPE_VULKAN_RENDERER, GskVulkanRenderer))
-#define GSK_IS_VULKAN_RENDERER(obj)              (G_TYPE_CHECK_INSTANCE_TYPE ((obj), 
GSK_TYPE_VULKAN_RENDERER))
-#define GSK_VULKAN_RENDERER_CLASS(klass)         (G_TYPE_CHECK_CLASS_CAST ((klass), 
GSK_TYPE_VULKAN_RENDERER, GskVulkanRendererClass))
-#define GSK_IS_VULKAN_RENDERER_CLASS(klass)      (G_TYPE_CHECK_CLASS_TYPE ((klass), 
GSK_TYPE_VULKAN_RENDERER))
-#define GSK_VULKAN_RENDERER_GET_CLASS(obj)       (G_TYPE_INSTANCE_GET_CLASS ((obj), 
GSK_TYPE_VULKAN_RENDERER, GskVulkanRendererClass))
-
-typedef struct _GskVulkanRenderer                GskVulkanRenderer;
-typedef struct _GskVulkanRendererClass           GskVulkanRendererClass;
-
-GType gsk_vulkan_renderer_get_type (void) G_GNUC_CONST;
-
 GskVulkanImage *        gsk_vulkan_renderer_ref_texture_image           (GskVulkanRenderer      *self,
                                                                          GdkTexture             *texture,
                                                                          GskVulkanUploader      *uploader);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]