mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-06 17:30:20 +01:00
add 3dlabs_shhandle interface
This commit is contained in:
parent
0a7ea2b0c3
commit
434f622ede
1 changed files with 42 additions and 41 deletions
|
|
@ -1845,85 +1845,86 @@ struct gl_occlusion_state
|
|||
struct _mesa_HashTable *QueryObjects;
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* XXX Can we move all these gl2 datatypes into the shader directory???
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* gl2 unique interface identifier.
|
||||
* Each gl2 interface has its own interface id used for object queries.
|
||||
*/
|
||||
enum gl2_uiid
|
||||
{
|
||||
UIID_UNKNOWN, /* supported by all objects */
|
||||
UIID_GENERIC, /* generic object */
|
||||
UIID_CONTAINER, /* contains generic objects */
|
||||
UIID_SHADER, /* shader object */
|
||||
UIID_FRAGMENT_SHADER, /* fragment shader */
|
||||
UIID_VERTEX_SHADER, /* vertex shader */
|
||||
UIID_PROGRAM /* program object */
|
||||
UIID_UNKNOWN, /* supported by all objects */
|
||||
UIID_GENERIC, /* generic object */
|
||||
UIID_CONTAINER, /* contains generic objects */
|
||||
UIID_SHADER, /* shader object */
|
||||
UIID_FRAGMENT_SHADER, /* fragment shader */
|
||||
UIID_VERTEX_SHADER, /* vertex shader */
|
||||
UIID_PROGRAM, /* program object */
|
||||
UIID_3DLABS_SHHANDLE /* encapsulates 3dlabs' ShHandle */
|
||||
};
|
||||
|
||||
struct gl2_unknown_intf
|
||||
{
|
||||
GLvoid (* AddRef) (struct gl2_unknown_intf **);
|
||||
GLvoid (* Release) (struct gl2_unknown_intf **);
|
||||
struct gl2_unknown_intf **(* QueryInterface) (struct gl2_unknown_intf **, enum gl2_uiid uiid);
|
||||
GLvoid (* AddRef) (struct gl2_unknown_intf **);
|
||||
GLvoid (* Release) (struct gl2_unknown_intf **);
|
||||
struct gl2_unknown_intf **(* QueryInterface) (struct gl2_unknown_intf **, enum gl2_uiid uiid);
|
||||
};
|
||||
|
||||
struct gl2_generic_intf
|
||||
{
|
||||
struct gl2_unknown_intf _unknown;
|
||||
GLvoid (* Delete) (struct gl2_generic_intf **);
|
||||
GLenum (* GetType) (struct gl2_generic_intf **);
|
||||
GLhandleARB (* GetName) (struct gl2_generic_intf **);
|
||||
GLboolean (* GetDeleteStatus) (struct gl2_generic_intf **);
|
||||
const GLcharARB *(* GetInfoLog) (struct gl2_generic_intf **);
|
||||
struct gl2_unknown_intf _unknown;
|
||||
GLvoid (* Delete) (struct gl2_generic_intf **);
|
||||
GLenum (* GetType) (struct gl2_generic_intf **);
|
||||
GLhandleARB (* GetName) (struct gl2_generic_intf **);
|
||||
GLboolean (* GetDeleteStatus) (struct gl2_generic_intf **);
|
||||
const GLcharARB *(* GetInfoLog) (struct gl2_generic_intf **);
|
||||
};
|
||||
|
||||
struct gl2_container_intf
|
||||
{
|
||||
struct gl2_generic_intf _generic;
|
||||
GLboolean (* Attach) (struct gl2_container_intf **, struct gl2_generic_intf **);
|
||||
GLboolean (* Detach) (struct gl2_container_intf **, struct gl2_generic_intf **);
|
||||
GLsizei (* GetAttachedCount) (struct gl2_container_intf **);
|
||||
struct gl2_generic_intf **(* GetAttached) (struct gl2_container_intf **, GLuint);
|
||||
struct gl2_generic_intf _generic;
|
||||
GLboolean (* Attach) (struct gl2_container_intf **, struct gl2_generic_intf **);
|
||||
GLboolean (* Detach) (struct gl2_container_intf **, struct gl2_generic_intf **);
|
||||
GLsizei (* GetAttachedCount) (struct gl2_container_intf **);
|
||||
struct gl2_generic_intf **(* GetAttached) (struct gl2_container_intf **, GLuint);
|
||||
};
|
||||
|
||||
struct gl2_shader_intf
|
||||
{
|
||||
struct gl2_generic_intf _generic;
|
||||
GLenum (* GetSubType) (struct gl2_shader_intf **);
|
||||
GLboolean (* GetCompileStatus) (struct gl2_shader_intf **);
|
||||
GLvoid (* SetSource) (struct gl2_shader_intf **, GLcharARB *, GLint *, GLsizei);
|
||||
const GLcharARB *(* GetSource) (struct gl2_shader_intf **);
|
||||
GLvoid (* Compile) (struct gl2_shader_intf **);
|
||||
struct gl2_generic_intf _generic;
|
||||
GLenum (* GetSubType) (struct gl2_shader_intf **);
|
||||
GLboolean (* GetCompileStatus) (struct gl2_shader_intf **);
|
||||
GLvoid (* SetSource) (struct gl2_shader_intf **, GLcharARB *, GLint *, GLsizei);
|
||||
const GLcharARB *(* GetSource) (struct gl2_shader_intf **);
|
||||
GLvoid (* Compile) (struct gl2_shader_intf **);
|
||||
};
|
||||
|
||||
struct gl2_program_intf
|
||||
{
|
||||
struct gl2_container_intf _container;
|
||||
GLboolean (* GetLinkStatus) (struct gl2_program_intf **);
|
||||
GLboolean (* GetValidateStatus) (struct gl2_program_intf **);
|
||||
GLvoid (* Link) (struct gl2_program_intf **);
|
||||
GLvoid (* Validate) (struct gl2_program_intf **);
|
||||
struct gl2_container_intf _container;
|
||||
GLboolean (* GetLinkStatus) (struct gl2_program_intf **);
|
||||
GLboolean (* GetValidateStatus) (struct gl2_program_intf **);
|
||||
GLvoid (* Link) (struct gl2_program_intf **);
|
||||
GLvoid (* Validate) (struct gl2_program_intf **);
|
||||
};
|
||||
|
||||
struct gl2_fragment_shader_intf
|
||||
{
|
||||
struct gl2_shader_intf _shader;
|
||||
struct gl2_shader_intf _shader;
|
||||
};
|
||||
|
||||
struct gl2_vertex_shader_intf
|
||||
{
|
||||
struct gl2_shader_intf _shader;
|
||||
struct gl2_shader_intf _shader;
|
||||
};
|
||||
|
||||
struct gl2_3dlabs_shhandle_intf
|
||||
{
|
||||
struct gl2_unknown_intf _unknown;
|
||||
GLvoid *(* GetShHandle) (struct gl2_3dlabs_shhandle_intf **);
|
||||
};
|
||||
|
||||
struct gl_shader_objects_state
|
||||
{
|
||||
struct gl2_program_intf **current_program;
|
||||
struct gl2_program_intf **current_program;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue