srp
software rendering pipeline
Loading...
Searching...
No Matches
context.h File Reference
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include "srp/message_callback.h"
#include "srp/arena.h"
Include dependency graph for context.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  SRPRasterState
 
struct  SRPScissorState
 
struct  SRPStencilFaceState
 
struct  SRPStencilState
 
struct  SRPDepthState
 
struct  SRPContext
 
enum  SRPProvokingVertexMode { SRP_PROVOKING_VERTEX_FIRST , SRP_PROVOKING_VERTEX_LAST }
 
enum  SRPWinding { SRP_WINDING_CCW , SRP_WINDING_CW }
 
enum  SRPFace { SRP_FACE_NONE , SRP_FACE_FRONT , SRP_FACE_BACK , SRP_FACE_FRONT_AND_BACK }
 
enum  SRPPolygonMode { SRP_POLYGON_MODE_FILL , SRP_POLYGON_MODE_LINE , SRP_POLYGON_MODE_POINT }
 
enum  SRPCompareOp {
  SRP_COMPARE_NEVER , SRP_COMPARE_ALWAYS , SRP_COMPARE_LESS , SRP_COMPARE_LEQUAL ,
  SRP_COMPARE_GREATER , SRP_COMPARE_GEQUAL , SRP_COMPARE_EQUAL , SRP_COMPARE_NOTEQUAL
}
 
enum  SRPStencilOp {
  SRP_STENCIL_KEEP , SRP_STENCIL_ZERO , SRP_STENCIL_REPLACE , SRP_STENCIL_INCR ,
  SRP_STENCIL_INCR_WRAP , SRP_STENCIL_DECR , SRP_STENCIL_DECR_WRAP , SRP_STENCIL_INVERT
}
 
typedef enum SRPProvokingVertexMode SRPProvokingVertexMode
 
typedef enum SRPWinding SRPWinding
 
typedef enum SRPFace SRPFace
 
typedef enum SRPPolygonMode SRPPolygonMode
 
typedef enum SRPCompareOp SRPCompareOp
 
typedef struct SRPRasterState SRPRasterState
 
typedef struct SRPScissorState SRPScissorState
 
typedef struct SRPStencilFaceState SRPStencilFaceState
 
typedef struct SRPStencilState SRPStencilState
 
typedef struct SRPDepthState SRPDepthState
 
typedef struct SRPContext SRPContext
 
SRPContext srpContext
 
void srpNewContext (SRPContext *pContext)
 
void srpSetMessageCallback (SRPMessageCallback callback)
 
void srpProvokingVertexMode (SRPProvokingVertexMode mode)
 
void srpRasterCullFace (SRPFace face)
 
void srpRasterFrontFace (SRPWinding face)
 
void srpRasterPolygonMode (SRPPolygonMode mode)
 
void srpRasterPointSize (float size)
 
void srpScissorTest (bool enable)
 
void srpScissorOptions (size_t x, size_t y, size_t width, size_t height)
 
void srpStencilTest (bool enable)
 
void srpStencilFunc (SRPCompareOp func, uint8_t ref, uint8_t mask)
 
void srpStencilFuncSeparate (SRPFace face, SRPCompareOp func, uint8_t ref, uint8_t mask)
 
void srpStencilOp (SRPStencilOp sfail, SRPStencilOp dfail, SRPStencilOp pass)
 
void srpStencilOpSeparate (SRPFace face, SRPStencilOp sfail, SRPStencilOp dfail, SRPStencilOp pass)
 
void srpStencilWriteMask (uint8_t mask)
 
void srpStencilWriteMaskSeparate (SRPFace face, uint8_t mask)
 
void srpDepthTest (bool enable)
 
void srpDepthWrite (bool enable)
 
void srpDepthCompareOp (SRPCompareOp op)
 

Detailed Description

SRPContext and related functions