rs_program.c revision 5a47020542c52af3e879c1cd67674ca979ff0a18
1#include "rs_core.rsh" 2#include "rs_graphics.rsh" 3#include "rs_structs.h" 4 5/** 6* Program Store 7*/ 8extern rs_depth_func __attribute__((overloadable)) 9 rsgProgramStoreGetDepthFunc(rs_program_store ps) { 10 ProgramStore_t *prog = (ProgramStore_t *)ps.p; 11 if (prog == NULL) { 12 return RS_DEPTH_FUNC_INVALID; 13 } 14 return prog->mHal.state.depthFunc; 15} 16 17extern bool __attribute__((overloadable)) 18 rsgProgramStoreIsDepthMaskEnabled(rs_program_store ps) { 19 ProgramStore_t *prog = (ProgramStore_t *)ps.p; 20 if (prog == NULL) { 21 return false; 22 } 23 return prog->mHal.state.depthWriteEnable; 24} 25 26extern bool __attribute__((overloadable)) 27 rsgProgramStoreIsColorMaskRedEnabled(rs_program_store ps) { 28 ProgramStore_t *prog = (ProgramStore_t *)ps.p; 29 if (prog == NULL) { 30 return false; 31 } 32 return prog->mHal.state.colorRWriteEnable; 33} 34 35extern bool __attribute__((overloadable)) 36 rsgProgramStoreIsColorMaskGreenEnabled(rs_program_store ps) { 37 ProgramStore_t *prog = (ProgramStore_t *)ps.p; 38 if (prog == NULL) { 39 return false; 40 } 41 return prog->mHal.state.colorGWriteEnable; 42} 43 44extern bool __attribute__((overloadable)) 45 rsgProgramStoreIsColorMaskBlueEnabled(rs_program_store ps) { 46 ProgramStore_t *prog = (ProgramStore_t *)ps.p; 47 if (prog == NULL) { 48 return false; 49 } 50 return prog->mHal.state.colorBWriteEnable; 51} 52 53extern bool __attribute__((overloadable)) 54 rsgProgramStoreIsColorMaskAlphaEnabled(rs_program_store ps) { 55 ProgramStore_t *prog = (ProgramStore_t *)ps.p; 56 if (prog == NULL) { 57 return false; 58 } 59 return prog->mHal.state.colorAWriteEnable; 60} 61 62extern rs_blend_src_func __attribute__((overloadable)) 63 rsgProgramStoreGetBlendSrcFunc(rs_program_store ps) { 64 ProgramStore_t *prog = (ProgramStore_t *)ps.p; 65 if (prog == NULL) { 66 return RS_BLEND_SRC_INVALID; 67 } 68 return prog->mHal.state.blendSrc; 69} 70 71extern rs_blend_dst_func __attribute__((overloadable)) 72 rsgProgramStoreGetBlendDstFunc(rs_program_store ps) { 73 ProgramStore_t *prog = (ProgramStore_t *)ps.p; 74 if (prog == NULL) { 75 return RS_BLEND_DST_INVALID; 76 } 77 return prog->mHal.state.blendDst; 78} 79 80extern bool __attribute__((overloadable)) 81 rsgProgramStoreIsDitherEnabled(rs_program_store ps) { 82 ProgramStore_t *prog = (ProgramStore_t *)ps.p; 83 if (prog == NULL) { 84 return false; 85 } 86 return prog->mHal.state.ditherEnable; 87} 88 89/** 90* Program Raster 91*/ 92extern bool __attribute__((overloadable)) 93 rsgProgramRasterIsPointSpriteEnabled(rs_program_raster pr) { 94 ProgramRaster_t *prog = (ProgramRaster_t *)pr.p; 95 if (prog == NULL) { 96 return false; 97 } 98 return prog->mHal.state.pointSprite; 99} 100 101extern rs_cull_mode __attribute__((overloadable)) 102 rsgProgramRasterGetCullMode(rs_program_raster pr) { 103 ProgramRaster_t *prog = (ProgramRaster_t *)pr.p; 104 if (prog == NULL) { 105 return RS_CULL_INVALID; 106 } 107 return prog->mHal.state.cull; 108} 109