static void hugsprim_glGetMaterialiv_5(HugsStackPtr hugs_root) { HsWord32 arg1; HsWord32 arg2; HsPtr arg3; arg1 = hugs->getWord32(); arg2 = hugs->getWord32(); arg3 = hugs->getPtr(); glGetMaterialiv(arg1, arg2, arg3); hugs->returnIO(hugs_root,0); }
int __glXDisp_GetMaterialiv(__GLXclientState *cl, GLbyte *pc) { GLenum pname; GLint compsize; __GLXcontext *cx; ClientPtr client = cl->client; int error; GLint answerBuffer[200]; char *answer; cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error); if (!cx) { return error; } pc += __GLX_SINGLE_HDR_SIZE; pname = *(GLenum *)(pc + 4); compsize = __glGetMaterialiv_size(pname); if (compsize < 0) compsize = 0; __GLX_GET_ANSWER_BUFFER(answer,cl,compsize*4,4); __glXClearErrorOccured(); glGetMaterialiv( *(GLenum *)(pc + 0), *(GLenum *)(pc + 4), (GLint *) answer ); if (__glXErrorOccured()) { __GLX_BEGIN_REPLY(0); __GLX_PUT_SIZE(0); __GLX_SEND_HEADER(); } else if (compsize == 1) { __GLX_BEGIN_REPLY(0); __GLX_PUT_SIZE(1); __GLX_PUT_INT(); __GLX_SEND_HEADER(); } else { __GLX_BEGIN_REPLY(compsize*4); __GLX_PUT_SIZE(compsize); __GLX_SEND_HEADER(); __GLX_SEND_INT_ARRAY(compsize); } return Success; }
M(void, glGetMaterialiv, jint face, jint pname, jobject params) { glGetMaterialiv(face, pname, BUFF(GLint, params)); }