Acme-MITHALDU-BleedingOpenGL
view release on metacpan or search on metacpan
pogl_gl_gltut.xs view on Meta::CPAN
glBindVertexArray(vertex_array);
}
#endif // GL_VERSION_3_0
#ifdef GL_VERSION_2_0
#//# glAttachShader($program,$shader);
void
glAttachShader(program,shader)
GLuint program
GLuint shader
INIT:
loadProc(glAttachShader,"glAttachShader");
CODE:
{
glAttachShader(program,shader);
}
#//# glDeleteShader($shader);
void
glDeleteShader(shader)
GLuint shader
INIT:
loadProc(glDeleteShader,"glDeleteShader");
CODE:
{
glDeleteShader(shader);
}
#//# $value = glGetShaderiv_p($target,$pname);
GLuint
glGetShaderiv_p(target,pname)
GLenum target
GLenum pname
INIT:
loadProc(glGetShaderiv,"glGetShaderiv");
CODE:
{
GLuint param;
glGetShaderiv(target,pname,(void *)¶m);
RETVAL = param;
}
OUTPUT:
RETVAL
#//# $infoLog = glGetShaderInfoLog_p($shader);
SV *
glGetShaderInfoLog_p(shader)
GLuint shader
INIT:
loadProc(glGetShaderiv,"glGetShaderiv");
loadProc(glGetShaderInfoLog,"glGetShaderInfoLog");
CODE:
{
GLint infoLogLength;
glGetShaderiv(shader,GL_INFO_LOG_LENGTH,(GLvoid *)&infoLogLength);
if (infoLogLength)
{
GLint length;
GLchar * infoLog = malloc(infoLogLength+1);
glGetShaderInfoLog(shader,infoLogLength,&length,infoLog);
infoLog[length] = 0;
if (*infoLog)
RETVAL = newSVpv(infoLog, 0);
else
RETVAL = newSVsv(&PL_sv_undef);
free(infoLog);
}
else
{
RETVAL = newSVsv(&PL_sv_undef);
}
}
OUTPUT:
RETVAL
#//# $value = glGetProgramiv_p($target,$pname);
GLuint
glGetProgramiv_p(target,pname)
GLenum target
GLenum pname
INIT:
loadProc(glGetProgramiv,"glGetProgramiv");
CODE:
{
GLuint param;
glGetProgramiv(target,pname,(void *)¶m);
RETVAL = param;
}
OUTPUT:
RETVAL
#endif // GL_VERSION_2_0
#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:
( run in 1.495 second using v1.01-cache-2.11-cpan-9e1a9122474 )