Skip to content

Class atlas::vk::vk_shader_group

ClassList > atlas > vk > vk_shader_group

Public Functions

Type Name
void compile ()
std::span< const vk_shader_module > data () const
void destroy ()
void set_vertex_attributes (const std::initializer_list< VkVertexInputAttributeDescription > & p_attributes)
void set_vertex_attributes (const std::span< VkVertexInputAttributeDescription > & p_attributes)
void set_vertex_bind_attributes (const std::initializer_list< VkVertexInputBindingDescription > & p_bind_attributes)
void set_vertex_bind_attributes (const std::span< VkVertexInputBindingDescription > & p_bind_attributes)
uint32_t size () const
void vertex_attributes (const std::span< vertex_attribute > & p_vertex_attributes)
std::span< VkVertexInputAttributeDescription > vertex_attributes ()
std::span< VkVertexInputBindingDescription > vertex_bind_attributes ()
vk_shader_group () = default
vk_shader_group (const std::initializer_list< shader_info > & p_list)
Constructing new shader group as an initialized list.
vk_shader_group (const std::span< shader_info > & p_shader_sources)
Constructs a shader group because a pipeline may have multiple shader groups part of the shader pipeline with a specific stage associated with it.

Public Functions Documentation

function compile

void atlas::vk::vk_shader_group::compile () 

function data

inline std::span< const vk_shader_module > atlas::vk::vk_shader_group::data () const

Returns:

span of vk_shader_module that contains the handler and stage this handler was loaded at


function destroy

void atlas::vk::vk_shader_group::destroy () 

function set_vertex_attributes [1/2]

void atlas::vk::vk_shader_group::set_vertex_attributes (
    const std::initializer_list< VkVertexInputAttributeDescription > & p_attributes
) 

function set_vertex_attributes [2/2]

void atlas::vk::vk_shader_group::set_vertex_attributes (
    const std::span< VkVertexInputAttributeDescription > & p_attributes
) 

function set_vertex_bind_attributes [1/2]

void atlas::vk::vk_shader_group::set_vertex_bind_attributes (
    const std::initializer_list< VkVertexInputBindingDescription > & p_bind_attributes
) 

function set_vertex_bind_attributes [2/2]

void atlas::vk::vk_shader_group::set_vertex_bind_attributes (
    const std::span< VkVertexInputBindingDescription > & p_bind_attributes
) 

function size

inline uint32_t atlas::vk::vk_shader_group::size () const

Returns:

uint32_t the size of vulkan shader modules loaded


function vertex_attributes [1/2]

void atlas::vk::vk_shader_group::vertex_attributes (
    const std::span< vertex_attribute > & p_vertex_attributes
) 

function vertex_attributes [2/2]

inline std::span< VkVertexInputAttributeDescription > atlas::vk::vk_shader_group::vertex_attributes () 

Returns:

vertex attributes set in the vertex shader


function vertex_bind_attributes

inline std::span< VkVertexInputBindingDescription > atlas::vk::vk_shader_group::vertex_bind_attributes () 

Returns:

binding vertex attributes also set in the vertex shader


function vk_shader_group [1/3]

atlas::vk::vk_shader_group::vk_shader_group () = default

function vk_shader_group [2/3]

Constructing new shader group as an initialized list.

atlas::vk::vk_shader_group::vk_shader_group (
    const std::initializer_list< shader_info > & p_list
) 


function vk_shader_group [3/3]

Constructs a shader group because a pipeline may have multiple shader groups part of the shader pipeline with a specific stage associated with it.

atlas::vk::vk_shader_group::vk_shader_group (
    const std::span< shader_info > & p_shader_sources
) 



The documentation for this class was generated from the following file TheAtlasEngine/atlas/drivers/vulkan-cpp/vk_shader_group.hpp