HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RV_VKShaderModule Class Reference

RAII wrapper class for Vk Shader Module. More...

#include <RV_VKShaderModule.h>

Public Member Functions

 ~RV_VKShaderModule ()
 
 UT_NON_COPYABLE (RV_VKShaderModule)
 
VkShaderModule getVkShaderModule () const
 
VkShaderStageFlagBits getStage () const
 
 RV_VKShaderModule (RV_Instance *inst, VkShaderStageFlagBits stage, VkShaderModule vk_module)
 

Static Public Member Functions

static RV_VKShaderModulePtr create (RV_Instance *inst, const RV_VKShaderModuleInfo *info)
 
static RV_VKShaderModulePtr create (RV_Instance *inst, const UT_Array< uint8 > &binary, VkShaderStageFlagBits stage)
 

Public Attributes

RV_InstancemyInst = nullptr
 
VkShaderModule myVkModule = VK_NULL_HANDLE
 
VkShaderStageFlagBits myStage = VK_SHADER_STAGE_VERTEX_BIT
 

Detailed Description

RAII wrapper class for Vk Shader Module.

Definition at line 30 of file RV_VKShaderModule.h.

Constructor & Destructor Documentation

RV_VKShaderModule::~RV_VKShaderModule ( )
RV_VKShaderModule::RV_VKShaderModule ( RV_Instance inst,
VkShaderStageFlagBits  stage,
VkShaderModule  vk_module 
)

Member Function Documentation

static RV_VKShaderModulePtr RV_VKShaderModule::create ( RV_Instance inst,
const RV_VKShaderModuleInfo info 
)
static

create a shader module with an info struct. Allows safety checks to be done before creation loaded

static RV_VKShaderModulePtr RV_VKShaderModule::create ( RV_Instance inst,
const UT_Array< uint8 > &  binary,
VkShaderStageFlagBits  stage 
)
static

create a module from raw binary. Must be valid SPIR-V binary for the instance, or will get undefined behavior

VkShaderStageFlagBits RV_VKShaderModule::getStage ( ) const
inline

Definition at line 50 of file RV_VKShaderModule.h.

VkShaderModule RV_VKShaderModule::getVkShaderModule ( ) const
inline

Definition at line 49 of file RV_VKShaderModule.h.

RV_VKShaderModule::UT_NON_COPYABLE ( RV_VKShaderModule  )

Member Data Documentation

RV_Instance* RV_VKShaderModule::myInst = nullptr

Definition at line 57 of file RV_VKShaderModule.h.

VkShaderStageFlagBits RV_VKShaderModule::myStage = VK_SHADER_STAGE_VERTEX_BIT

Definition at line 59 of file RV_VKShaderModule.h.

VkShaderModule RV_VKShaderModule::myVkModule = VK_NULL_HANDLE

Definition at line 58 of file RV_VKShaderModule.h.


The documentation for this class was generated from the following file: