packspu_getshaders.c revision d68511fc6827e32ca38d7bbaed520c34b6c9f050
/* $Id$ */
/** @file
* VBox OpenGL DRI driver functions
*/
/*
* Copyright (C) 2009 Sun Microsystems, Inc.
*
* Sun Microsystems, Inc. confidential
* All rights reserved
*/
#include "packspu.h"
#include "cr_packfunctions.h"
#include "cr_net.h"
#include "packspu_proto.h"
#include "cr_mem.h"
/*@todo combine with the one from server_getshaders.c*/
typedef struct _crGetActive_t
{
void PACKSPU_APIENTRY packspu_GetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, char * name)
{
int writeback = 1;
if (!pLocal) return;
packspuFlush((void *) thread);
while (writeback)
crNetRecv();
}
void PACKSPU_APIENTRY packspu_GetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, char * name)
{
int writeback = 1;
if (!pLocal) return;
packspuFlush((void *) thread);
while (writeback)
crNetRecv();
}
void PACKSPU_APIENTRY packspu_GetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei * count, GLuint * shaders)
{
int writeback = 1;
if (!shaders) return;
if (!pLocal) return;
packspuFlush((void *) thread);
while (writeback)
crNetRecv();
}
void PACKSPU_APIENTRY packspu_GetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei * length, char * infoLog)
{
int writeback = 1;
if (!infoLog) return;
if (!pLocal) return;
packspuFlush((void *) thread);
while (writeback)
crNetRecv();
}
void PACKSPU_APIENTRY packspu_GetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei * length, char * infoLog)
{
int writeback = 1;
if (!infoLog) return;
if (!pLocal) return;
packspuFlush((void *) thread);
while (writeback)
crNetRecv();
}
void PACKSPU_APIENTRY packspu_GetShaderSource(GLuint shader, GLsizei bufSize, GLsizei * length, char * source)
{
int writeback = 1;
if (!source) return;
if (!pLocal) return;
packspuFlush((void *) thread);
while (writeback)
crNetRecv();
}