[Mesa-dev] [PATCH 10/15] mesa/sso: Implement _mesa_IsProgramPipeline
Ian Romanick
idr at freedesktop.org
Fri Feb 7 22:00:20 PST 2014
From: Gregory Hainaut <gregory.hainaut at gmail.com>
Implement IsProgramPipeline based on the VAO code.
This was originally included in another patch, but it was split out by
Ian Romanick.
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
---
src/mesa/main/mtypes.h | 2 ++
src/mesa/main/pipelineobj.c | 8 +++++++-
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index 4b8749a..a1514fc 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -2778,6 +2778,8 @@ struct gl_pipeline_object
struct gl_shader_program *ActiveProgram;
GLbitfield Flags; /**< Mask of GLSL_x flags */
+
+ GLboolean EverBound; /**< Has the pipeline object been created */
};
/**
diff --git a/src/mesa/main/pipelineobj.c b/src/mesa/main/pipelineobj.c
index d8979b8..b47dc7a 100644
--- a/src/mesa/main/pipelineobj.c
+++ b/src/mesa/main/pipelineobj.c
@@ -331,7 +331,13 @@ _mesa_GenProgramPipelines(GLsizei n, GLuint *pipelines)
GLboolean GLAPIENTRY
_mesa_IsProgramPipeline(GLuint pipeline)
{
- return GL_FALSE;
+ GET_CURRENT_CONTEXT(ctx);
+
+ struct gl_pipeline_object *obj = lookup_pipeline_object(ctx, pipeline);
+ if (obj == NULL)
+ return GL_FALSE;
+
+ return obj->EverBound;
}
/**
--
1.8.1.4
More information about the mesa-dev
mailing list