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
 
ShaderModule & operator= (const ShaderModule &)=delete
 
ShaderModule & operator= (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::ShaderModule > build (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: