#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: