2016-12-06 13:42:46 +00:00
|
|
|
#ifndef __GSK_VULKAN_IMAGE_PRIVATE_H__
|
|
|
|
#define __GSK_VULKAN_IMAGE_PRIVATE_H__
|
|
|
|
|
|
|
|
#include <gdk/gdk.h>
|
|
|
|
|
2016-12-16 05:10:24 +00:00
|
|
|
#include "gsk/gskvulkancommandpoolprivate.h"
|
|
|
|
|
2016-12-06 13:42:46 +00:00
|
|
|
G_BEGIN_DECLS
|
|
|
|
|
2016-12-17 03:22:44 +00:00
|
|
|
typedef struct _GskVulkanUploader GskVulkanUploader;
|
|
|
|
|
2016-12-08 19:19:56 +00:00
|
|
|
#define GSK_TYPE_VULKAN_IMAGE (gsk_vulkan_image_get_type ())
|
|
|
|
|
|
|
|
G_DECLARE_FINAL_TYPE (GskVulkanImage, gsk_vulkan_image, GSK, VULKAN_IMAGE, GObject)
|
2016-12-06 13:42:46 +00:00
|
|
|
|
2016-12-17 03:22:44 +00:00
|
|
|
GskVulkanUploader * gsk_vulkan_uploader_new (GdkVulkanContext *context,
|
|
|
|
GskVulkanCommandPool *command_pool);
|
|
|
|
void gsk_vulkan_uploader_free (GskVulkanUploader *self);
|
|
|
|
|
|
|
|
void gsk_vulkan_uploader_reset (GskVulkanUploader *self);
|
2016-12-17 03:54:19 +00:00
|
|
|
void gsk_vulkan_uploader_upload (GskVulkanUploader *self);
|
2016-12-17 03:22:44 +00:00
|
|
|
|
2016-12-08 20:14:41 +00:00
|
|
|
GskVulkanImage * gsk_vulkan_image_new_for_swapchain (GdkVulkanContext *context,
|
|
|
|
VkImage image,
|
|
|
|
VkFormat format,
|
|
|
|
gsize width,
|
|
|
|
gsize height);
|
2016-12-17 03:22:44 +00:00
|
|
|
GskVulkanImage * gsk_vulkan_image_new_from_data (GskVulkanUploader *uploader,
|
2016-12-06 13:42:46 +00:00
|
|
|
guchar *data,
|
|
|
|
gsize width,
|
|
|
|
gsize height,
|
|
|
|
gsize stride);
|
|
|
|
|
2016-12-08 19:46:02 +00:00
|
|
|
gsize gsk_vulkan_image_get_width (GskVulkanImage *self);
|
|
|
|
gsize gsk_vulkan_image_get_height (GskVulkanImage *self);
|
2016-12-06 13:42:46 +00:00
|
|
|
VkImage gsk_vulkan_image_get_image (GskVulkanImage *self);
|
|
|
|
VkImageView gsk_vulkan_image_get_image_view (GskVulkanImage *self);
|
|
|
|
|
|
|
|
G_END_DECLS
|
|
|
|
|
|
|
|
#endif /* __GSK_VULKAN_IMAGE_PRIVATE_H__ */
|