1 /* 2 * Copyright 2020 Google LLC 3 * SPDX-License-Identifier: MIT 4 */ 5 6 #ifndef VKR_IMAGE_H 7 #define VKR_IMAGE_H 8 9 #include "vkr_common.h" 10 11 struct vkr_image { 12 struct vkr_object base; 13 }; 14 VKR_DEFINE_OBJECT_CAST(image, VK_OBJECT_TYPE_IMAGE, VkImage) 15 16 struct vkr_image_view { 17 struct vkr_object base; 18 }; 19 VKR_DEFINE_OBJECT_CAST(image_view, VK_OBJECT_TYPE_IMAGE_VIEW, VkImageView) 20 21 struct vkr_sampler { 22 struct vkr_object base; 23 }; 24 VKR_DEFINE_OBJECT_CAST(sampler, VK_OBJECT_TYPE_SAMPLER, VkSampler) 25 26 struct vkr_sampler_ycbcr_conversion { 27 struct vkr_object base; 28 }; 29 VKR_DEFINE_OBJECT_CAST(sampler_ycbcr_conversion, 30 VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION, 31 VkSamplerYcbcrConversion) 32 33 void 34 vkr_context_init_image_dispatch(struct vkr_context *ctx); 35 36 void 37 vkr_context_init_image_view_dispatch(struct vkr_context *ctx); 38 39 void 40 vkr_context_init_sampler_dispatch(struct vkr_context *ctx); 41 42 void 43 vkr_context_init_sampler_ycbcr_conversion_dispatch(struct vkr_context *ctx); 44 45 #endif /* VKR_IMAGE_H */ 46