Lugdunum  0.1.0
Public Member Functions | Private Attributes | List of all members
lug::Graphics::Vulkan::API::Builder::ShaderModule Class Reference

#include <ShaderModule.hpp>

Collaboration diagram for lug::Graphics::Vulkan::API::Builder::ShaderModule:
[legend]

Public Member Functions

 ShaderModule (const API::Device &device)
 
 ShaderModule (const ShaderModule &)=delete
 
 ShaderModule (ShaderModule &&)=delete
 
ShaderModuleoperator= (const ShaderModule &)=delete
 
ShaderModuleoperator= (ShaderModule &&)=delete
 
 ~ShaderModule ()=default
 
bool loadFromFile (const std::string &filename)
 
void loadFromData (const std::vector< uint32_t > &data)
 
bool build (API::ShaderModule &instance, VkResult *returnResult=nullptr)
 
std::unique_ptr< API::ShaderModulebuild (VkResult *returnResult=nullptr)
 

Private Attributes

const API::Device_device
 
size_t _codeSize {0}
 
std::vector< uint32_t > _data
 

Detailed Description

Definition at line 17 of file ShaderModule.hpp.

Constructor & Destructor Documentation

◆ ShaderModule() [1/3]

lug::Graphics::Vulkan::API::Builder::ShaderModule::ShaderModule ( const API::Device device)

Definition at line 21 of file ShaderModule.cpp.

◆ ShaderModule() [2/3]

lug::Graphics::Vulkan::API::Builder::ShaderModule::ShaderModule ( const ShaderModule )
delete

◆ ShaderModule() [3/3]

lug::Graphics::Vulkan::API::Builder::ShaderModule::ShaderModule ( ShaderModule &&  )
delete

◆ ~ShaderModule()

lug::Graphics::Vulkan::API::Builder::ShaderModule::~ShaderModule ( )
default

Member Function Documentation

◆ operator=() [1/2]

ShaderModule& lug::Graphics::Vulkan::API::Builder::ShaderModule::operator= ( const ShaderModule )
delete

◆ operator=() [2/2]

ShaderModule& lug::Graphics::Vulkan::API::Builder::ShaderModule::operator= ( ShaderModule &&  )
delete

◆ loadFromFile()

bool lug::Graphics::Vulkan::API::Builder::ShaderModule::loadFromFile ( const std::string &  filename)

Definition at line 23 of file ShaderModule.cpp.

◆ loadFromData()

void lug::Graphics::Vulkan::API::Builder::ShaderModule::loadFromData ( const std::vector< uint32_t > &  data)

Definition at line 65 of file ShaderModule.cpp.

◆ build() [1/2]

bool lug::Graphics::Vulkan::API::Builder::ShaderModule::build ( API::ShaderModule instance,
VkResult *  returnResult = nullptr 
)

Definition at line 70 of file ShaderModule.cpp.

◆ build() [2/2]

std::unique_ptr< API::ShaderModule > lug::Graphics::Vulkan::API::Builder::ShaderModule::build ( VkResult *  returnResult = nullptr)

Definition at line 95 of file ShaderModule.cpp.

Member Data Documentation

◆ _device

const API::Device& lug::Graphics::Vulkan::API::Builder::ShaderModule::_device
private

Definition at line 37 of file ShaderModule.hpp.

◆ _codeSize

size_t lug::Graphics::Vulkan::API::Builder::ShaderModule::_codeSize {0}
private

Definition at line 39 of file ShaderModule.hpp.

◆ _data

std::vector<uint32_t> lug::Graphics::Vulkan::API::Builder::ShaderModule::_data
private

Definition at line 40 of file ShaderModule.hpp.


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