class
#include <VaultedVulkan/VV_Shaders.hpp>
ShaderModule Shader modules contain shader code and one or more entry points.
Contents
This object represents a device created object on the host. As such ownership is tied to this host object. Due to this design, the object has no copy-construction allowed. Instead, default move constructor and assignment has been defined.
Base classes
- struct VV::V2::ShaderModule
- Shader modules contain shader code and one or more entry points.
Public types
-
using Parent = V2::
ShaderModule
Constructors, destructors, conversion operators
- ShaderModule()
- Default constructor.
- ShaderModule(const LogicalDevice& _device)
- Specifies the logical device.
-
ShaderModule(const LogicalDevice& _device,
const Memory::
AllocationCallbacks& _allocator) - Specifies the logical device and allocator.
- ShaderModule(ShaderModule&& _other) noexcept
- Performs a move operation to transfer ownership of the device object to this host object.
- ~ShaderModule()
- Destroy the shader module if the handle is not null.
- operator Handle&()
- Implicit conversion to give a reference to its handle.
- operator const Handle&() const
- Implicit conversion to give a readonly reference to its handle.
- operator const Handle*() const
- Implicit conversion to give a pointer to its handle.
Public functions
- auto Create(const CreateInfo& _info) -> EResult
- Create a shader module.
- auto Create(const LogicalDevice& _device, const CreateInfo& _info) -> EResult
- Create a shader module (logical device specified).
-
auto Create(const LogicalDevice& _device,
const CreateInfo& _info,
const Memory::
AllocationCallbacks& _allocator) -> EResult - Create a shader module (logical device and allocator specified).
- void Destroy()
- Destroy a shader module.
- auto operator==(const ShaderModule& _other) const -> bool
- Checks to see if its the same object by checking to see if its the same handle.
- auto operator=(ShaderModule&& _other) -> ShaderModule& noexcept
- Performs a move assignment operation to transfer ownership of the device object to this host object.
Protected variables
- Handle handle
-
const Memory::
AllocationCallbacks* allocator - const LogicalDevice* device