view release on metacpan or search on metacpan
pogl_gl_Accu_GetM.xs view on Meta::CPAN
{
void * textures_s = EL(textures, sizeof(GLuint)*n);
void * residences_s = EL(residences, sizeof(GLboolean)*n);
glAreTexturesResident(n, textures_s, residences_s);
}
#// 1.1
#//# (result,@residences) = glAreTexturesResident_p(@textureIDs);
void
glAreTexturesResident_p(...)
PPCODE:
{
GLsizei n = items;
GLuint * textures = malloc(sizeof(GLuint) * (n+1));
GLboolean * residences = malloc(sizeof(GLboolean) * (n+1));
GLboolean result;
int i;
for (i=0;i<n;i++)
textures[i] = SvIV(ST(i));
pogl_gl_Accu_GetM.xs view on Meta::CPAN
{
void * textures_s = EL(textures, sizeof(GLuint)*n);
glGenTextures(n, textures_s);
}
#// 1.1
#//# @textureIDs = glGenTextures_p($n);
void
glGenTextures_p(n)
GLint n
PPCODE:
if (n) {
GLuint * textures = malloc(sizeof(GLuint) * n);
int i;
glGenTextures(n, textures);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(textures[i])));
pogl_gl_Accu_GetM.xs view on Meta::CPAN
{
void * params_s = EL(params, sizeof(GLfloat) * gl_get_count(pname));
glGetFloatv(pname, params_s);
}
#// 1.0
#//# @data = glGetDoublev_p($param);
void
glGetDoublev_p(param)
GLenum param
PPCODE:
{
GLdouble ret[MAX_GL_GET_COUNT];
int n = gl_get_count(param);
int i;
glGetDoublev(param, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSVnv(ret[i])));
}
#// 1.0
#//# @data = glGetBooleanv_p($param);
void
glGetBooleanv_p(param)
GLenum param
PPCODE:
{
GLboolean ret[MAX_GL_GET_COUNT];
int n = gl_get_count(param);
int i;
glGetBooleanv(param, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(ret[i])));
}
#// 1.0
#//# @data = glGetIntegerv_p($param);
void
glGetIntegerv_p(param)
GLenum param
PPCODE:
{
GLint ret[MAX_GL_GET_COUNT];
int n = gl_get_count(param);
int i;
glGetIntegerv(param, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(ret[i])));
}
#// 1.0
#//# @data = glGetFloatv_p($param);
void
glGetFloatv_p(param)
GLenum param
PPCODE:
{
GLfloat ret[MAX_GL_GET_COUNT];
int n = gl_get_count(param);
int i;
glGetFloatv(param, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSVnv(ret[i])));
}
pogl_gl_Accu_GetM.xs view on Meta::CPAN
{
GLdouble * eqn_s = EL(eqn, sizeof(GLdouble)*4);
glGetClipPlane(plane, eqn_s);
}
#// 1.0
#//# @data = glGetClipPlane_p($plane);
void
glGetClipPlane_p(plane)
GLenum plane
PPCODE:
{
int i;
GLdouble eqn[4];
eqn[0] = eqn[1] = eqn[2] = eqn[3] = 0;
glGetClipPlane(plane, &eqn[0]);
EXTEND(sp, 4);
for(i=0;i<4;i++)
PUSHs(sv_2mortal(newSVnv(eqn[i])));
}
pogl_gl_Accu_GetM.xs view on Meta::CPAN
void * p_s = EL(p, sizeof(GLint)*gl_light_count(pname));
glGetLightiv(light, pname, p_s);
}
#// 1.0
#//# @data = glGetLightfv_p($light, $pname);
void
glGetLightfv_p(light, pname)
GLenum light
GLenum pname
PPCODE:
{
GLfloat ret[MAX_GL_LIGHT_COUNT];
int n = gl_light_count(pname);
int i;
glGetLightfv(light, pname, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSVnv(ret[i])));
}
#// 1.0
#//# @data = glGetLightiv_p($light, $pname);
void
glGetLightiv_p(light, pname)
GLenum light
GLenum pname
PPCODE:
{
GLint ret[MAX_GL_LIGHT_COUNT];
int n = gl_light_count(pname);
int i;
glGetLightiv(light, pname, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(ret[i])));
}
pogl_gl_Accu_GetM.xs view on Meta::CPAN
GLint * v_s = EL(v, sizeof(GLint)*gl_map_count(target, query));
glGetMapiv(target, query, v_s);
}
#// 1.0
#//# @data = glGetMapfv_p($target, $query);
void
glGetMapfv_p(target, query)
GLenum target
GLenum query
PPCODE:
{
GLfloat ret[MAX_GL_MAP_COUNT];
int n = gl_map_count(target, query);
int i;
glGetMapfv(target, query, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSVnv(ret[i])));
}
#// 1.0
#//# @data = glGetMapdv_p($target, $query);
void
glGetMapdv_p(target, query)
GLenum target
GLenum query
PPCODE:
{
GLdouble ret[MAX_GL_MAP_COUNT];
int n = gl_map_count(target, query);
int i;
glGetMapdv(target, query, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSVnv(ret[i])));
}
#// 1.0
#//# @data = glGetMapiv_p($target, $query);
void
glGetMapiv_p(target, query)
GLenum target
GLenum query
PPCODE:
{
GLint ret[MAX_GL_MAP_COUNT];
int n = gl_map_count(target, query);
int i;
glGetMapiv(target, query, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(ret[i])));
}
pogl_gl_Accu_GetM.xs view on Meta::CPAN
sizeof(GLfloat)*gl_material_count(query));
glGetMaterialiv(face, query, params_s);
}
#// 1.0
#//# @params = glGetMaterialfv_p($face, $query);
void
glGetMaterialfv_p(face, query)
GLenum face
GLenum query
PPCODE:
{
GLfloat ret[MAX_GL_MATERIAL_COUNT];
int n = gl_material_count(query);
int i;
glGetMaterialfv(face, query, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSVnv(ret[i])));
}
#// 1.0
#//# @params = glGetMaterialiv_p($face, $query);
void
glGetMaterialiv_p(face, query)
GLenum face
GLenum query
PPCODE:
{
GLint ret[MAX_GL_MATERIAL_COUNT];
int n = gl_material_count(query);
int i;
glGetMaterialiv(face, query, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(ret[i])));
}
pogl_gl_GetP_Pass.xs view on Meta::CPAN
CODE:
{
GLubyte * ptr = ELI(mask, 32, 32, GL_COLOR_INDEX, GL_BITMAP, gl_pixelbuffer_unpack);
glGetPolygonStipple(ptr);
}
#// 1.0
#//# @mask = glGetPolygonStipple_p();
void
glGetPolygonStipple_p()
PPCODE:
{
void * ptr;
glPushClientAttrib(GL_CLIENT_PIXEL_STORE_BIT);
glPixelStorei(GL_PACK_ROW_LENGTH, 0);
glPixelStorei(GL_PACK_ALIGNMENT, 1);
ptr = allocate_image_ST(32, 32, 1, GL_COLOR_INDEX, GL_BITMAP, 0);
glGetPolygonStipple(ptr);
sp = unpack_image_ST(sp, ptr, 32, 32, 1,
GL_COLOR_INDEX, GL_BITMAP, 0);
free(ptr);
pogl_gl_GetP_Pass.xs view on Meta::CPAN
GLint * params_s = EL(params, sizeof(GLint) * gl_texenv_count(pname));
glGetTexEnviv(target, pname, params_s);
}
#// 1.0
#//# @parames = glGetTexEnvfv_p($target, $pname);
void
glGetTexEnvfv_p(target, pname)
GLenum target
GLenum pname
PPCODE:
{
GLfloat ret[MAX_GL_TEXENV_COUNT];
int n = gl_texenv_count(pname);
int i;
glGetTexEnvfv(target, pname, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSVnv(ret[i])));
}
#// 1.0
#//# @parames = glGetTexEnviv_p($target, $pname);
void
glGetTexEnviv_p(target, pname)
GLenum target
GLenum pname
PPCODE:
{
GLint ret[MAX_GL_TEXENV_COUNT];
int n = gl_texenv_count(pname);
int i;
glGetTexEnviv(target, pname, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(ret[i])));
}
pogl_gl_GetP_Pass.xs view on Meta::CPAN
GLint * params_s = EL(params, sizeof(GLint)*gl_texgen_count(pname));
glGetTexGeniv(coord, pname, params_s);
}
#// 1.0
#//# @params = glGetTexGenfv_p($coord, $pname);
void
glGetTexGenfv_p(coord, pname)
GLenum coord
GLenum pname
PPCODE:
{
GLfloat ret[MAX_GL_TEXGEN_COUNT];
int n = gl_texgen_count(pname);
int i;
glGetTexGenfv(coord, pname, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSVnv(ret[i])));
}
#// 1.0
#//# @params = glGetTexGendv_p($coord, $pname);
void
glGetTexGendv_p(coord, pname)
GLenum coord
GLenum pname
PPCODE:
{
GLdouble ret[MAX_GL_TEXGEN_COUNT];
int n = gl_texgen_count(pname);
int i;
glGetTexGendv(coord, pname, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSVnv(ret[i])));
}
#// 1.0
#//# @params = glGetTexGeniv_p($coord, $pname);
void
glGetTexGeniv_p(coord, pname)
GLenum coord
GLenum pname
PPCODE:
{
GLint ret[MAX_GL_TEXGEN_COUNT];
int n = gl_texgen_count(pname);
int i;
glGetTexGeniv(coord, pname, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(ret[i])));
}
pogl_gl_GetP_Pass.xs view on Meta::CPAN
}
#// 1.0
#//# @pixels = glGetTexImage_c($target, $level, $format, $type);
void
glGetTexImage_p(target, level, format, type)
GLenum target
GLint level
GLenum format
GLenum type
PPCODE:
{
GLint width, height;
GLvoid * ptr;
glGetTexLevelParameteriv(target, level,
GL_TEXTURE_WIDTH, &width);
glGetTexLevelParameteriv(target, level,
GL_TEXTURE_HEIGHT, &height);
glPushClientAttrib(GL_CLIENT_PIXEL_STORE_BIT);
pogl_gl_GetP_Pass.xs view on Meta::CPAN
glGetTexLevelParameteriv(target, level, pname, params_s);
}
#// 1.0
#//# @params = glGetTexLevelParameterfv_p($target, $level, $pname);
void
glGetTexLevelParameterfv_p(target, level, pname)
GLenum target
GLint level
GLenum pname
PPCODE:
{
GLfloat ret;
glGetTexLevelParameterfv(target, level, pname, &ret);
PUSHs(sv_2mortal(newSVnv(ret)));
}
#// 1.0
#//# @params = glGetTexLevelParameteriv_p($target, $level, $pname);
void
glGetTexLevelParameteriv_p(target, level, pname)
GLenum target
GLint level
GLenum pname
PPCODE:
{
GLint ret;
glGetTexLevelParameteriv(target, level, pname, &ret);
PUSHs(sv_2mortal(newSViv(ret)));
}
#// 1.0
#//# glGetTexParameterfv_c($target, $pname, (CPTR)params);
void
glGetTexParameterfv_c(target, pname, params)
pogl_gl_GetP_Pass.xs view on Meta::CPAN
sizeof(GLint)*gl_texparameter_count(pname));
glGetTexParameteriv(target, pname, params_s);
}
#// 1.0
#//# @params = glGetTexParameterfv_p($target, $pname);
void
glGetTexParameterfv_p(target, pname)
GLenum target
GLenum pname
PPCODE:
{
GLfloat ret[MAX_GL_TEXPARAMETER_COUNT];
int n = gl_texparameter_count(pname);
int i;
glGetTexParameterfv(target, pname, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSVnv(ret[i])));
}
#// 1.0
#//# @params = glGetTexParameteriv_p($target, $pname);
void
glGetTexParameteriv_p(target, pname)
GLenum target
GLenum pname
PPCODE:
{
GLint ret[MAX_GL_TEXPARAMETER_COUNT];
int n = gl_texparameter_count(pname);
int i;
glGetTexParameteriv(target, pname, &ret[0]);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(ret[i])));
}
pogl_gl_Mult_Prog.xs view on Meta::CPAN
}
}
#//# @objs = glGetAttachedObjectsARB_p($containerObj);
void
glGetAttachedObjectsARB_p(containerObj)
GLhandleARB containerObj
INIT:
loadProc(glGetObjectParameterivARB,"glGetObjectParameterivARB");
loadProc(glGetAttachedObjectsARB,"glGetAttachedObjectsARB");
PPCODE:
{
GLsizei maxCount;
GLsizei count;
GLhandleARB *obj;
int i;
glGetObjectParameterivARB(containerObj,GL_OBJECT_ATTACHED_OBJECTS_ARB,
(GLvoid *)&maxCount);
obj = malloc(sizeof(GLhandleARB)*maxCount);
pogl_gl_Mult_Prog.xs view on Meta::CPAN
}
#//# ($name,$type,$size) = glGetActiveUniformARB_p($programObj, $index);
void
glGetActiveUniformARB_p(programObj, index)
GLhandleARB programObj
GLuint index
INIT:
loadProc(glGetObjectParameterivARB,"glGetObjectParameterivARB");
loadProc(glGetActiveUniformARB,"glGetActiveUniformARB");
PPCODE:
{
GLsizei maxLength;
glGetObjectParameterivARB(programObj,GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB,
(GLvoid *)&maxLength);
if (maxLength)
{
GLsizei length;
GLint size;
GLenum type;
GLcharARB *name;
pogl_gl_Mult_Prog.xs view on Meta::CPAN
CODE:
glGetShaderSourceARB(obj, maxLength, length, source);
#//# $source = glGetShaderSourceARB_p($obj);
void
glGetShaderSourceARB_p(obj)
GLhandleARB obj
INIT:
loadProc(glGetObjectParameterivARB,"glGetObjectParameterivARB");
loadProc(glGetShaderSourceARB,"glGetShaderSourceARB");
PPCODE:
{
GLsizei maxLength;
glGetObjectParameterivARB(obj,GL_OBJECT_SHADER_SOURCE_LENGTH_ARB,
(GLvoid *)&maxLength);
EXTEND(sp,1);
if (maxLength)
{
GLsizei length;
pogl_gl_Mult_Prog.xs view on Meta::CPAN
GLuint * programs_s = EL(programs, sizeof(GLuint)*n);
glGenProgramsARB(n, programs_s);
}
#//# @programIDs = glGenProgramsARB_c($n);
void
glGenProgramsARB_p(n)
GLsizei n
INIT:
loadProc(glGenProgramsARB,"glGenProgramsARB");
PPCODE:
if (n)
{
GLuint * programs = malloc(sizeof(GLuint) * n);
int i;
glGenProgramsARB(n, programs);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(programs[i])));
pogl_gl_Pixe_Ver2.xs view on Meta::CPAN
#// 1.0
#//# @pixels = glReadPixels_p($x, $y, $width, $height, $format, $type);
void
glReadPixels_p(x, y, width, height, format, type)
GLint x
GLint y
GLsizei width
GLsizei height
GLenum format
GLenum type
PPCODE:
{
void * ptr;
glPushClientAttrib(GL_CLIENT_PIXEL_STORE_BIT);
glPixelStorei(GL_PACK_ROW_LENGTH, 0);
glPixelStorei(GL_PACK_ALIGNMENT, 1);
ptr = allocate_image_ST(width, height, 1, format, type, 0);
glReadPixels(x, y, width, height, format, type, ptr);
sp = unpack_image_ST(sp, ptr, width, height, 1, format, type, 0);
free(ptr);
glPopClientAttrib();
pogl_gl_Prog_Clam.xs view on Meta::CPAN
glGetProgramEnvParameterdvARB(target,index,params_s);
}
#//# @params = glGetProgramEnvParameterdvARB_p($target,$index);
void
glGetProgramEnvParameterdvARB_p(target,index)
GLenum target
GLint index
INIT:
loadProc(glGetProgramEnvParameterdvARB,"glGetProgramEnvParameterdvARB");
PPCODE:
{
GLdouble params[4];
glGetProgramEnvParameterdvARB(target,index,params);
EXTEND(sp, 4);
PUSHs(sv_2mortal(newSVnv(params[0])));
PUSHs(sv_2mortal(newSVnv(params[1])));
PUSHs(sv_2mortal(newSVnv(params[2])));
PUSHs(sv_2mortal(newSVnv(params[3])));
}
pogl_gl_Prog_Clam.xs view on Meta::CPAN
glGetProgramEnvParameterfvARB(target,index,params_s);
}
#//# @params = glGetProgramEnvParameterfvARB_p($target,$index);
void
glGetProgramEnvParameterfvARB_p(target,index)
GLenum target
GLint index
INIT:
loadProc(glGetProgramEnvParameterfvARB,"glGetProgramEnvParameterfvARB");
PPCODE:
{
GLfloat params[4];
glGetProgramEnvParameterfvARB(target,index,params);
EXTEND(sp, 4);
PUSHs(sv_2mortal(newSVnv(params[0])));
PUSHs(sv_2mortal(newSVnv(params[1])));
PUSHs(sv_2mortal(newSVnv(params[2])));
PUSHs(sv_2mortal(newSVnv(params[3])));
}
pogl_gl_Prog_Clam.xs view on Meta::CPAN
glGetProgramLocalParameterdvARB(target,index,params_s);
}
#//# @params = glGetProgramLocalParameterdvARB_p($target,$index);
void
glGetProgramLocalParameterdvARB_p(target,index)
GLenum target
GLint index
INIT:
loadProc(glGetProgramLocalParameterdvARB,"glGetProgramLocalParameterdvARB");
PPCODE:
{
GLdouble params[4];
glGetProgramLocalParameterdvARB(target,index,params);
EXTEND(sp, 4);
PUSHs(sv_2mortal(newSVnv(params[0])));
PUSHs(sv_2mortal(newSVnv(params[1])));
PUSHs(sv_2mortal(newSVnv(params[2])));
PUSHs(sv_2mortal(newSVnv(params[3])));
}
pogl_gl_Prog_Clam.xs view on Meta::CPAN
glGetProgramLocalParameterfvARB(target,index,params_s);
}
#//# @params = glGetProgramLocalParameterfvARB_p($target,$index);
void
glGetProgramLocalParameterfvARB_p(target,index)
GLenum target
GLint index
INIT:
loadProc(glGetProgramLocalParameterfvARB,"glGetProgramLocalParameterfvARB");
PPCODE:
{
GLfloat params[4];
glGetProgramLocalParameterfvARB(target,index,params);
EXTEND(sp, 4);
PUSHs(sv_2mortal(newSVnv(params[0])));
PUSHs(sv_2mortal(newSVnv(params[1])));
PUSHs(sv_2mortal(newSVnv(params[2])));
PUSHs(sv_2mortal(newSVnv(params[3])));
}
pogl_gl_Prog_Clam.xs view on Meta::CPAN
glGetVertexAttribPointervARB(index,pname,pointer);
#//# $param = glGetVertexAttribPointervARB_p($index,$pname);
void
glGetVertexAttribPointervARB_p(index,pname)
GLuint index
GLenum pname
INIT:
loadProc(glGetVertexAttribPointervARB,"glGetVertexAttribPointervARB");
loadProc(glGetVertexAttribivARB,"glGetVertexAttribivARB");
PPCODE:
{
void * pointer;
GLuint i,count,type;
glGetVertexAttribPointervARB(index,pname,&pointer);
glGetVertexAttribivARB(index,GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB,(void *)&count);
glGetVertexAttribivARB(index,GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB,(void *)&type);
EXTEND(sp, count);
pogl_gl_Prog_Clam.xs view on Meta::CPAN
}
#//# ($name,$type,$size) = glGetActiveAttribARB_p($programObj, $index);
void
glGetActiveAttribARB_p(programObj, index)
GLhandleARB programObj
GLuint index
INIT:
loadProc(glGetObjectParameterivARB,"glGetObjectParameterivARB");
loadProc(glGetActiveAttribARB,"glGetActiveAttribARB");
PPCODE:
{
GLsizei maxLength;
glGetObjectParameterivARB(programObj,GL_OBJECT_ACTIVE_ATTRIBUTES_ARB,
(GLvoid *)&maxLength);
if (maxLength)
{
GLsizei length;
GLint size;
GLenum type;
GLcharARB *name;
pogl_gl_Tex2_Draw.xs view on Meta::CPAN
list[i] = SvIV(ST(i));
glDeleteTextures(items, list);
free(list);
}
#// @textureIDs = glGenTexturesEXT_p($n);
void
glGenTexturesEXT_p(n)
GLint n
PPCODE:
if (n) {
GLuint * textures = malloc(sizeof(GLuint) * n);
int i;
glGenTextures(n, textures);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(textures[i])));
free(textures);
}
#// ($result,@residences) = glAreTexturesResidentEXT_p(@textureIDs);
void
glAreTexturesResidentEXT_p(...)
PPCODE:
{
GLsizei n = items;
GLuint * textures = malloc(sizeof(GLuint) * (n+1));
GLboolean * residences = malloc(sizeof(GLboolean) * (n+1));
GLboolean result;
int i;
for (i=0;i<n;i++)
textures[i] = SvIV(ST(i));
pogl_gl_Vert_Multi.xs view on Meta::CPAN
CODE:
{
void * renderbuffers_s = EL(renderbuffers, sizeof(GLuint)*n);
glGenRenderbuffers(n, renderbuffers_s);
}
#//# @renderbuffers = glGenRenderbuffers_c($n);
void
glGenRenderbuffers_p(n)
GLsizei n
PPCODE:
if (n)
{
GLuint * renderbuffers = malloc(sizeof(GLuint) * n);
int i;
glGenRenderbuffers(n, renderbuffers);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(renderbuffers[i])));
pogl_gl_Vert_Multi.xs view on Meta::CPAN
CODE:
{
void * framebuffers_s = EL(framebuffers, sizeof(GLuint)*n);
glGenFramebuffers(n,framebuffers_s);
}
#//# @framebuffers = glGenFramebuffers_c($n);
void
glGenFramebuffers_p(n)
GLsizei n
PPCODE:
if (n)
{
GLuint * framebuffers = malloc(sizeof(GLuint) * n);
int i;
glGenFramebuffers(n, framebuffers);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(framebuffers[i])));
pogl_gl_Vert_Multi.xs view on Meta::CPAN
void * renderbuffers_s = EL(renderbuffers, sizeof(GLuint)*n);
glGenRenderbuffersEXT(n, renderbuffers_s);
}
#//# @renderbuffers = glGenRenderbuffersEXT_c($n);
void
glGenRenderbuffersEXT_p(n)
GLsizei n
INIT:
loadProc(glGenRenderbuffersEXT,"glGenRenderbuffersEXT");
PPCODE:
if (n)
{
GLuint * renderbuffers = malloc(sizeof(GLuint) * n);
int i;
glGenRenderbuffersEXT(n, renderbuffers);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(renderbuffers[i])));
pogl_gl_Vert_Multi.xs view on Meta::CPAN
void * framebuffers_s = EL(framebuffers, sizeof(GLuint)*n);
glGenFramebuffersEXT(n,framebuffers_s);
}
#//# @framebuffers = glGenFramebuffersEXT_c($n);
void
glGenFramebuffersEXT_p(n)
GLsizei n
INIT:
loadProc(glGenFramebuffersEXT,"glGenFramebuffersEXT");
PPCODE:
if (n)
{
GLuint * framebuffers = malloc(sizeof(GLuint) * n);
int i;
glGenFramebuffersEXT(n, framebuffers);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(framebuffers[i])));
pogl_gl_Vert_Multi.xs view on Meta::CPAN
CODE:
{
void * buffers_s = EL(buffers, sizeof(GLuint)*n);
glGenBuffers(n, buffers_s);
}
#//# @buffers = glGenBuffers_p($n);
void
glGenBuffers_p(n)
GLsizei n
PPCODE:
if (n)
{
GLuint * buffers = malloc(sizeof(GLuint) * n);
int i;
glGenBuffers(n, buffers);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(buffers[i])));
pogl_gl_Vert_Multi.xs view on Meta::CPAN
{
GLint * params_s = EL(params, sizeof(GLint)*1);
glGetBufferParameteriv(target,pname,params_s);
}
#//# @params = glGetBufferParameteriv_p($target,$pname);
void
glGetBufferParameteriv_p(target,pname)
GLenum target
GLenum pname
PPCODE:
{
GLint ret;
glGetBufferParameteriv(target,pname,&ret);
PUSHs(sv_2mortal(newSViv(ret)));
}
#//# glGetBufferPointerv_c($target,$pname,(CPTR)params);
void
glGetBufferPointerv_c(target,pname,params)
GLenum target
pogl_gl_Vert_Multi.xs view on Meta::CPAN
void * buffers_s = EL(buffers, sizeof(GLuint)*n);
glGenBuffersARB(n, buffers_s);
}
#//# @buffers = glGenBuffersARB_p($n);
void
glGenBuffersARB_p(n)
GLsizei n
INIT:
loadProc(glGenBuffersARB,"glGenBuffersARB");
PPCODE:
if (n)
{
GLuint * buffers = malloc(sizeof(GLuint) * n);
int i;
glGenBuffersARB(n, buffers);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(buffers[i])));
pogl_gl_Vert_Multi.xs view on Meta::CPAN
glGetBufferParameterivARB(target,pname,params_s);
}
#//# @params = glGetBufferParameterivARB_p($target,$pname);
void
glGetBufferParameterivARB_p(target,pname)
GLenum target
GLenum pname
INIT:
loadProc(glGetBufferParameterivARB,"glGetBufferParameterivARB");
PPCODE:
{
GLint ret;
glGetBufferParameterivARB(target,pname,&ret);
PUSHs(sv_2mortal(newSViv(ret)));
}
#//# glGetBufferPointervARB_c($target,$pname,(CPTR)params);
void
glGetBufferPointervARB_c(target,pname,params)
GLenum target
pogl_gl_gltut.xs view on Meta::CPAN
#ifdef GL_VERSION_3_0
#//# @vertex_arrays = glGenVertexArrays_p($n);
void
glGenVertexArrays_p(n)
GLsizei n
INIT:
loadProc(glGenVertexArrays,"glGenVertexArrays");
PPCODE:
if (n)
{
GLuint * vertex_arrays = malloc(sizeof(GLuint) * n);
int i;
glGenVertexArrays(n, vertex_arrays);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(vertex_arrays[i])));
pogl_gl_gltut.xs view on Meta::CPAN
#ifdef GL_VERSION_1_5
#//# @queryIDs = glGenQueries_p($n);
void
glGenQueries_p(n)
GLint n
INIT:
loadProc(glGenQueries,"glGenQueries");
PPCODE:
if (n) {
GLuint * ids = malloc(sizeof(GLuint) * n);
int i;
glGenQueries(n, ids);
EXTEND(sp, n);
for(i=0;i<n;i++)
PUSHs(sv_2mortal(newSViv(ids[i])));
free(ids);
}
#//# glDeleteQueries(@textureIDs);
void
glDeleteQueries(...)
INIT:
loadProc(glDeleteQueries,"glDeleteQueries");
PPCODE:
{
GLsizei n = items;
GLuint * ids = malloc(sizeof(GLuint) * (n+1));
int i;
for (i=0;i<n;i++)
ids[i] = SvIV(ST(i));
glDeleteQueries(n, ids);
pogl_gl_top.xs view on Meta::CPAN
{
RETVAL = XPending(d);
}
OUTPUT:
RETVAL
#// glpXNextEvent([$display]);
void
glpXNextEvent(d=dpy)
void * d
PPCODE:
{
XEvent event;
char buf[10];
KeySym ks;
XNextEvent(d,&event);
switch(event.type) {
case ConfigureNotify:
EXTEND(sp,3);
PUSHs(sv_2mortal(newSViv(event.type)));
PUSHs(sv_2mortal(newSViv(event.xconfigure.width)));
pogl_gl_top.xs view on Meta::CPAN
PUSHs(sv_2mortal(newSViv(event.type)));
break;
}
}
#// glpXQueryPointer([$winID[, $display]]);
void
glpXQueryPointer(w=win,d=dpy)
void * d
GLXDrawable w
PPCODE:
{
int x,y,rx,ry;
Window r,c;
unsigned int m;
XQueryPointer(d,w,&r,&c,&rx,&ry,&x,&y,&m);
EXTEND(sp,3);
PUSHs(sv_2mortal(newSViv(x)));
PUSHs(sv_2mortal(newSViv(y)));
PUSHs(sv_2mortal(newSViv(m)));
}
pogl_glu.xs view on Meta::CPAN
m[i] = SvIV(ST(i+4));
gluPickMatrix(x, y, delX, delY, &m[0]);
}
#//# gluProject_p($objx, $objy, $objz, @m4x4, @o4x4, $v1,$v2,$v3,$v4);
void
gluProject_p(objx, objy, objz, m1,m2,m3,m4,m5,m6,m7,m8,m9,m10,m11,m12,m13,m14,m15,m16, o1,o2,o3,o4,o5,o6,o7,o8,o9,o10,o11,o12,o13,o14,o15,o16, v1,v2,v3,v4)
GLdouble objx
GLdouble objy
GLdouble objz
PPCODE:
{
GLdouble m[16], p[16], winx, winy, winz;
GLint v[4];
int i;
for (i=0;i<16;i++)
m[i] = SvNV(ST(i+3));
for (i=0;i<16;i++)
p[i] = SvNV(ST(i+3+16));
for (i=0;i<4;i++)
v[i] = SvIV(ST(i+3+16+16));
pogl_glu.xs view on Meta::CPAN
gluTessVertex(tess->triangulator, data, data);
}
}
#//# gluUnProject_p($winx,$winy,$winz, @m4x4, @o4x4, $v1,$v2,$v3,$v4);
void
gluUnProject_p(winx,winy,winz, m1,m2,m3,m4,m5,m6,m7,m8,m9,m10,m11,m12,m13,m14,m15,m16, o1,o2,o3,o4,o5,o6,o7,o8,o9,o10,o11,o12,o13,o14,o15,o16, v1,v2,v3,v4)
GLdouble winx
GLdouble winy
GLdouble winz
PPCODE:
{
GLdouble m[16], p[16], objx, objy, objz;
GLint v[4];
int i;
for (i=0;i<16;i++)
m[i] = SvNV(ST(i+3));
for (i=0;i<16;i++)
p[i] = SvNV(ST(i+3+16));
for (i=0;i<4;i++)
pogl_matrix.xs view on Meta::CPAN
OUTPUT:
RETVAL
#//# @row = $mat->row($row[, $arrayref]);
#//- Get/Set the value of a 2D Matrix row
#//- When setting new values, returns the previous row values
void
row(mat, row, ...)
OpenGL::Matrix mat
GLsizei row
PPCODE:
{
needs_2D(mat, "row");
if (row >= mat->dimensions[1])
{
croak("OpenGL::Matrix::element row exceeds matrix height");
}
GLfloat * data = mat->data;
int cols = mat->dimensions[0];
int index = row * cols;
pogl_matrix.xs view on Meta::CPAN
}
}
#//# @col = $mat->column($col[, $arrayref]);
#//- Get/Set the value of a 2D Matrix column
#//- When setting new values, returns the previous column values
void
column(mat, col, ...)
OpenGL::Matrix mat
GLsizei col
PPCODE:
{
needs_2D(mat, "column");
int cols = mat->dimensions[0];
if (col >= cols)
{
croak("OpenGL::Matrix::element col exceeds matrix width");
}
GLfloat * data = mat->data;
pogl_rpn.xs view on Meta::CPAN
src = SvPV(data, len);
memcpy(offset, src, len);
}
#//# @data = $oga->retrieve($pos,$len);
#//- Get OGA data array, by offset and length
void
retrieve(oga, ...)
OpenGL::Array oga
PPCODE:
{
GLint pos = (items > 1) ? SvIV(ST(1)) : 0;
GLint len = (items > 2) ? SvIV(ST(2)) : (oga->item_count - pos);
char * offset;
int end = pos + len;
int i;
offset = ((char*)oga->data) +
(pos / oga->type_count * oga->total_types_width) +
oga->type_offset[pos % oga->type_count];
pogl_rpn.xs view on Meta::CPAN
if (free_mat) free(mat);
}
#//# @dimensions = $oga->get_dimensions();
#//- Get OGA data array, by offset and length
void
get_dimensions(oga)
OpenGL::Array oga
PPCODE:
{
int end = oga->dimension_count;
int i = 0;
EXTEND(sp, end);
for (;i<end;i++) {
PUSHs(sv_2mortal(newSViv( oga->dimensions[i] )));
}
}