HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RV_VKEnum.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: RV_VKEnum.h ( RV Library, C++)
7  *
8  * COMMENTS:
9  * Helper functions for use with Vulkan Enum values
10  */
11 
12 #ifndef RV_VKEnum_h
13 #define RV_VKEnum_h
14 
15 #include "RV_API.h"
16 
17 #include <RE/RE_Types.h>
18 #include <RE/RE_TextureTypes.h>
19 
20 #include "RV_VK.h"
21 #include "RV_Type.h"
22 
23 // ~~~~~~
24 // VkFormat Helpers
29  bool is_array,
30  bool is_cube);
31 
32 // convert _SIGNED and _UNSIGNED integer type to _NORM integer type
37 
39  bool normalized = false);
41 
42 // `secondary_aspect` applies to multi-aspect formats, i.e. depth/stencil
44  RV_GPUType &out_type,
45  int &out_vec_size,
46  bool primary_aspect = true);
47 
48 
49 // ~~~~~~
50 // VkDescriporType Helpers
54 
55 // ~~~~~~
56 // VkSampleCount Helpers
58 
59 // ~~~~~~
60 // VkImageViewType
62 
63 // ~~~~~~
64 // VK Image Type helpers
70 
71 // ~~~~~~
72 // VkAccessFlags Helpers
76 
77 // ~~~~~~
78 // VkPipelineBindPoint Helpers
80 
81 // ~~~~~~
82 // VkShaderStageFlags Helpers
85  VkAccessFlags access_type,
86  VkPipelineStageFlags shader_stages);
87 
88 
89 // ~~~~~~
90 // VkPipelineState helpers
97 #endif
98 
VkBlendFactor
Definition: vulkan_core.h:1768
VkSamplerAddressMode
Definition: vulkan_core.h:2032
VkFlags VkBufferUsageFlags
Definition: vulkan_core.h:2515
VkBorderColor
Definition: vulkan_core.h:2012
RV_API VkCompareOp RVconvertToVkCompareOp(RE_ZFunction func, bool reverse_z)
RV_API VkPipelineStageFlags RVpipelineStageFromAccess(VkAccessFlags access_type, VkPipelineStageFlags shader_stages)
RV_API VkFormat RVconvertToDepthVkFormat(RV_GPUType type, bool stencil)
RV_API VkSampleCountFlagBits RVsampleCount(int samples)
RV_API bool RVisStencilFormat(VkFormat format)
VkFilter
Definition: vulkan_core.h:2024
RV_API VkPipelineBindPoint RVconvertToVkBindPoint(RV_ShaderType type)
RV_API VkFormat RVgetNormalizedFormat(VkFormat format)
VkFlags VkPipelineStageFlags
Definition: vulkan_core.h:2401
RV_API void RVconvertFromVkFormat(VkFormat format, RV_GPUType &out_type, int &out_vec_size, bool primary_aspect=true)
RV_API bool RVsAccessReadOnly(VkAccessFlags access)
RV_API VkAccessFlags RVaccessFromBufferUsage(VkBufferUsageFlags usage)
RV_TextureMipMode
Definition: RV_Type.h:134
VkFlags VkImageUsageFlags
Definition: vulkan_core.h:2311
VkDescriptorType
Definition: vulkan_core.h:2048
RV_API VkStencilOp RVconvertToVKStencilOp(RE_SOperation op)
VkBlendOp
Definition: vulkan_core.h:1791
RV_API bool RVisTexBufDescriptor(VkDescriptorType t)
VkCompareOp
Definition: vulkan_core.h:1846
GLuint GLint GLboolean GLint GLenum access
Definition: glcorearb.h:2222
RV_API VkAccessFlags RVaccessFromImageUsage(VkImageUsageFlags usage)
RV_API VkFormat RVconvertToVkFormat(RV_GPUType type, uint32_t vec_size, bool normalized=false)
GLint GLint GLsizei GLint GLenum format
Definition: glcorearb.h:108
#define RV_API
Definition: RV_API.h:10
RV_TextureWrap
Definition: RV_Type.h:141
RE_BlendEquation
Definition: RE_Types.h:532
RE_TextureBorder
VkShaderStageFlagBits
Definition: vulkan_core.h:2594
RE_ZFunction
Definition: RE_Types.h:471
GLint GLenum GLboolean normalized
Definition: glcorearb.h:872
RV_TextureFilter
Definition: RV_Type.h:127
VkImageType
Definition: vulkan_core.h:1699
GLdouble t
Definition: glad.h:2397
GLsizei samples
Definition: glcorearb.h:1298
RV_ShaderType
Definition: RV_Type.h:405
RV_API bool RVisDepthFormat(VkFormat format)
RV_API VkFilter RVConvertToVkFilter(RV_TextureFilter t)
RV_API bool RVisColorFormat(VkFormat format)
GLsizeiptr const void GLenum usage
Definition: glcorearb.h:664
GLenum func
Definition: glcorearb.h:783
RV_API RV_ShaderType RVgetShaderType(VkShaderStageFlagBits stage)
VkPipelineBindPoint
Definition: vulkan_core.h:2089
VkFlags VkAccessFlags
Definition: vulkan_core.h:2155
VkSampleCountFlagBits
Definition: vulkan_core.h:2263
RV_API VkSamplerAddressMode RVConvertToVKWrap(RV_TextureWrap t)
RV_GPUType
Definition: RV_Type.h:37
VkSamplerMipmapMode
Definition: vulkan_core.h:2042
RV_API bool RVisImageDescriptor(VkDescriptorType t)
RE_SOperation
Definition: RE_Types.h:495
RV_API bool RVhasNormalizedFormat(VkFormat format)
RV_API bool RVisIntFormat(VkFormat format)
RE_BlendSourceFactor
Definition: RE_Types.h:507
VkFormat
Definition: vulkan_core.h:1386
RV_API bool RVisBufferDescriptor(VkDescriptorType t)
RV_API VkSamplerMipmapMode RVConvertToVkMipMode(RV_TextureMipMode t)
RV_API VkBlendFactor RVconvertToVkBlendFactor(RE_BlendSourceFactor fact)
VkImageViewType
Definition: vulkan_core.h:1757
RV_API bool RVisNormalizedFormat(VkFormat format)
GLint GLfloat GLint stencil
Definition: glcorearb.h:1278
VkStencilOp
Definition: vulkan_core.h:1980
RV_ImageDim
Definition: RV_Type.h:111
RV_API VkBorderColor RVConvertToVkBorder(UT_Vector4F t)
type
Definition: core.h:1059
RV_API VkImageViewType RVgetImageViewType(VkImageType type, bool is_array, bool is_cube)
RE_SFunction
Definition: RE_Types.h:483
RV_API VkBlendOp RVconvertToVkBlendOp(RE_BlendEquation op)
RV_API RV_ImageDim RVConvertFromImageViewType(VkImageViewType t)
RE_BlendDestFactor
Definition: RE_Types.h:520