KiCad PCB EDA Suite
Loading...
Searching...
No Matches
rhi_pipeline.h File Reference
#include <rhi/rhi_handle.h>
#include <rhi/rhi_bind_group.h>
#include <rhi/rhi_texture.h>
#include <cstdint>
#include <vector>

Go to the source code of this file.

Classes

struct  RHI_VERTEX_ATTRIBUTE_DESC
 
struct  RHI_VERTEX_BUFFER_LAYOUT_DESC
 
struct  RHI_BLEND_STATE
 
struct  RHI_DEPTH_STENCIL_STATE
 
struct  RHI_PIPELINE_DESC
 Everything here is fixed at creation except the states listed in dynamicStates. More...
 

Enumerations

enum class  RHI_BLEND_FACTOR { ZERO , ONE , SRC_ALPHA , ONE_MINUS_SRC_ALPHA }
 
enum class  RHI_BLEND_OP { ADD }
 
enum class  RHI_COMPARE_OP { LESS , LESS_EQUAL }
 
enum class  RHI_VERTEX_FORMAT {
  FLOAT32X2 , FLOAT32X4 , FLOAT16X2 , FLOAT16X4 ,
  UINT8X4_NORM , UINT16X2
}
 
enum class  RHI_VERTEX_STEP_MODE { VERTEX , INSTANCE }
 
enum class  RHI_PRIMITIVE_TOPOLOGY { TRIANGLE_LIST }
 
enum class  RHI_DYNAMIC_STATE { VIEWPORT , SCISSOR }
 

Functions

bool RhiPipelineUsesDepthStencil (const RHI_PIPELINE_DESC &aDesc)
 Return true when the pipeline targets framebuffers with a depth/stencil attachment.
 

Enumeration Type Documentation

◆ RHI_BLEND_FACTOR

enum class RHI_BLEND_FACTOR
strong
Enumerator
ZERO 
ONE 
SRC_ALPHA 
ONE_MINUS_SRC_ALPHA 

Definition at line 28 of file rhi_pipeline.h.

◆ RHI_BLEND_OP

enum class RHI_BLEND_OP
strong
Enumerator
ADD 

Definition at line 36 of file rhi_pipeline.h.

◆ RHI_COMPARE_OP

enum class RHI_COMPARE_OP
strong
Enumerator
LESS 
LESS_EQUAL 

Definition at line 41 of file rhi_pipeline.h.

◆ RHI_DYNAMIC_STATE

enum class RHI_DYNAMIC_STATE
strong
Enumerator
VIEWPORT 
SCISSOR 

Definition at line 68 of file rhi_pipeline.h.

◆ RHI_PRIMITIVE_TOPOLOGY

enum class RHI_PRIMITIVE_TOPOLOGY
strong
Enumerator
TRIANGLE_LIST 

Definition at line 63 of file rhi_pipeline.h.

◆ RHI_VERTEX_FORMAT

enum class RHI_VERTEX_FORMAT
strong
Enumerator
FLOAT32X2 
FLOAT32X4 
FLOAT16X2 
FLOAT16X4 
UINT8X4_NORM 
UINT16X2 

Definition at line 47 of file rhi_pipeline.h.

◆ RHI_VERTEX_STEP_MODE

enum class RHI_VERTEX_STEP_MODE
strong
Enumerator
VERTEX 
INSTANCE 

Definition at line 57 of file rhi_pipeline.h.

Function Documentation

◆ RhiPipelineUsesDepthStencil()

bool RhiPipelineUsesDepthStencil ( const RHI_PIPELINE_DESC & aDesc)
inline

Return true when the pipeline targets framebuffers with a depth/stencil attachment.

Metal rejects a bind whose pipeline and framebuffer disagree on it.

Definition at line 139 of file rhi_pipeline.h.

References RHI_PIPELINE_DESC::depthStencil, RHI_DEPTH_STENCIL_STATE::depthTestEnable, and RHI_PIPELINE_DESC::renderPassHasDepthStencil.

Referenced by RHI_VULKAN_DEVICE::CreatePipeline().