#include <GraphicsPipeline.hpp>
|
| GraphicsPipeline (const API::Device &device) |
|
| GraphicsPipeline (const GraphicsPipeline &)=delete |
|
| GraphicsPipeline (GraphicsPipeline &&)=delete |
|
GraphicsPipeline & | operator= (const GraphicsPipeline &)=delete |
|
GraphicsPipeline & | operator= (GraphicsPipeline &&)=delete |
|
| ~GraphicsPipeline ()=default |
|
void | setShader (VkShaderStageFlagBits stage, const char *entry, API::ShaderModule shaderModule) |
|
bool | setShaderFromFile (VkShaderStageFlagBits stage, const char *entry, const std::string &filename) |
|
bool | setShaderFromData (VkShaderStageFlagBits stage, const char *entry, const std::vector< uint32_t > &data) |
|
InputBinding | addInputBinding (uint32_t stride, VkVertexInputRate inputRate=VK_VERTEX_INPUT_RATE_VERTEX) |
|
InputBinding | addInputBinding (uint32_t binding, uint32_t stride, VkVertexInputRate inputRate=VK_VERTEX_INPUT_RATE_VERTEX) |
|
void | setInputAssemblyInfo (VkPrimitiveTopology topology, bool primitiveRestartEnable) |
|
void | setDynamicStates (const std::set< VkDynamicState > &dynamicStates) |
|
void | setPipelineLayout (API::PipelineLayout pipelineLayout) |
|
void | setRenderPass (API::RenderPass renderPass, uint32_t subpass) |
|
void | setPipelineCache (VkPipelineCache pipelineCache) |
|
ViewportState | getViewportState () |
|
RasterizationState | getRasterizationState () |
|
MultisampleState | getMultisampleState () |
|
DepthStencilState | getDepthStencilState () |
|
ColorBlendState | getColorBlendState () |
|
bool | build (API::GraphicsPipeline &graphicPipeline, VkResult *returnResult=nullptr) |
|
std::unique_ptr< API::GraphicsPipeline > | build (VkResult *returnResult=nullptr) |
|
Definition at line 23 of file GraphicsPipeline.hpp.
◆ GraphicsPipeline() [1/3]
lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::GraphicsPipeline |
( |
const API::Device & |
device | ) |
|
◆ GraphicsPipeline() [2/3]
lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::GraphicsPipeline |
( |
const GraphicsPipeline & |
| ) |
|
|
delete |
◆ GraphicsPipeline() [3/3]
lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::GraphicsPipeline |
( |
GraphicsPipeline && |
| ) |
|
|
delete |
◆ ~GraphicsPipeline()
lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::~GraphicsPipeline |
( |
| ) |
|
|
default |
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ setShader()
void GraphicsPipeline::setShader |
( |
VkShaderStageFlagBits |
stage, |
|
|
const char * |
entry, |
|
|
API::ShaderModule |
shaderModule |
|
) |
| |
|
inline |
◆ setShaderFromFile()
bool GraphicsPipeline::setShaderFromFile |
( |
VkShaderStageFlagBits |
stage, |
|
|
const char * |
entry, |
|
|
const std::string & |
filename |
|
) |
| |
|
inline |
◆ setShaderFromData()
bool GraphicsPipeline::setShaderFromData |
( |
VkShaderStageFlagBits |
stage, |
|
|
const char * |
entry, |
|
|
const std::vector< uint32_t > & |
data |
|
) |
| |
|
inline |
◆ addInputBinding() [1/2]
InputBinding lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::addInputBinding |
( |
uint32_t |
stride, |
|
|
VkVertexInputRate |
inputRate = VK_VERTEX_INPUT_RATE_VERTEX |
|
) |
| |
◆ addInputBinding() [2/2]
InputBinding lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::addInputBinding |
( |
uint32_t |
binding, |
|
|
uint32_t |
stride, |
|
|
VkVertexInputRate |
inputRate = VK_VERTEX_INPUT_RATE_VERTEX |
|
) |
| |
◆ setInputAssemblyInfo()
void GraphicsPipeline::setInputAssemblyInfo |
( |
VkPrimitiveTopology |
topology, |
|
|
bool |
primitiveRestartEnable |
|
) |
| |
|
inline |
◆ setDynamicStates()
void GraphicsPipeline::setDynamicStates |
( |
const std::set< VkDynamicState > & |
dynamicStates | ) |
|
|
inline |
◆ setPipelineLayout()
◆ setRenderPass()
void GraphicsPipeline::setRenderPass |
( |
API::RenderPass |
renderPass, |
|
|
uint32_t |
subpass |
|
) |
| |
|
inline |
◆ setPipelineCache()
void GraphicsPipeline::setPipelineCache |
( |
VkPipelineCache |
pipelineCache | ) |
|
|
inline |
◆ getViewportState()
◆ getRasterizationState()
◆ getMultisampleState()
◆ getDepthStencilState()
◆ getColorBlendState()
◆ build() [1/2]
bool lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::build |
( |
API::GraphicsPipeline & |
graphicPipeline, |
|
|
VkResult * |
returnResult = nullptr |
|
) |
| |
◆ build() [2/2]
std::unique_ptr< API::GraphicsPipeline > lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::build |
( |
VkResult * |
returnResult = nullptr | ) |
|
◆ _device
const API::Device& lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_device |
|
private |
◆ _shaderModules
std::vector<API::ShaderModule> lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_shaderModules |
|
private |
◆ _shaderStages
std::vector<VkPipelineShaderStageCreateInfo> lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_shaderStages |
|
private |
◆ _inputBindings
std::vector<VkVertexInputBindingDescription> lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_inputBindings |
|
private |
◆ _inputAttributes
std::vector<VkVertexInputAttributeDescription> lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_inputAttributes |
|
private |
◆ _topology
VkPrimitiveTopology lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_topology {VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST} |
|
private |
◆ _primitiveRestartEnable
bool lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_primitiveRestartEnable {VK_FALSE} |
|
private |
◆ _viewportState
VkPipelineViewportStateCreateInfo lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_viewportState |
|
private |
Initial value:{
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO,
nullptr,
0,
0,
nullptr,
0,
nullptr
}
Definition at line 254 of file GraphicsPipeline.hpp.
◆ _viewports
std::vector<VkViewport> lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_viewports |
|
private |
◆ _scissors
std::vector<VkRect2D> lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_scissors |
|
private |
◆ _rasterizationState
VkPipelineRasterizationStateCreateInfo lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_rasterizationState |
|
private |
Initial value:{
VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO,
nullptr,
0,
VK_FALSE,
VK_FALSE,
VK_POLYGON_MODE_FILL,
VK_CULL_MODE_BACK_BIT,
VK_FRONT_FACE_COUNTER_CLOCKWISE,
VK_FALSE,
0.0f,
0.0f,
0.0f,
1.0f
}
Definition at line 268 of file GraphicsPipeline.hpp.
◆ _multisampleState
VkPipelineMultisampleStateCreateInfo lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_multisampleState |
|
private |
Initial value:{
VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO,
nullptr,
0,
VK_SAMPLE_COUNT_1_BIT,
VK_FALSE,
0.0f,
nullptr,
VK_FALSE,
VK_FALSE
}
Definition at line 285 of file GraphicsPipeline.hpp.
◆ _depthStencilState
VkPipelineDepthStencilStateCreateInfo lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_depthStencilState |
|
private |
Initial value:{
VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO,
nullptr,
0,
VK_FALSE,
VK_FALSE,
VK_COMPARE_OP_NEVER,
VK_FALSE,
VK_FALSE,
{},
{},
0.0f,
0.0f
}
Definition at line 298 of file GraphicsPipeline.hpp.
◆ _colorBlendState
VkPipelineColorBlendStateCreateInfo lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_colorBlendState |
|
private |
Initial value:{
VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO,
nullptr,
0,
VK_FALSE,
VK_LOGIC_OP_CLEAR,
0,
nullptr,
{0.0f, 0.0f, 0.0f, 0.0f}
}
Definition at line 314 of file GraphicsPipeline.hpp.
◆ _colorBlendAttachments
std::vector<VkPipelineColorBlendAttachmentState> lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_colorBlendAttachments |
|
private |
◆ _dynamicStates
std::set<VkDynamicState> lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_dynamicStates |
|
private |
◆ _pipelineLayout
◆ _renderPass
API::RenderPass lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_renderPass |
|
private |
◆ _subpass
uint32_t lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_subpass {0} |
|
private |
◆ _pipelineCache
VkPipelineCache lug::Graphics::Vulkan::API::Builder::GraphicsPipeline::_pipelineCache {VK_NULL_HANDLE} |
|
private |
The documentation for this class was generated from the following files: