Merge remote branch 'origin/master' into glsl2
[mesa.git] / src / mesa / main / shaderobj.h
index d6b37b45963c31e1f3c8ba193ff06a977a5b2c19..b48244dc0d2eab2bd89a5c3be0536123cc150e72 100644 (file)
 #define SHADEROBJ_H
 
 
-#include "glheader.h"
-#include "mtypes.h"
+#include "main/glheader.h"
+#include "main/mtypes.h"
+#include "program/ir_to_mesa.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/**
+ * Internal functions
+ */
+
+extern void
+_mesa_init_shader_state(GLcontext * ctx);
+
+extern void
+_mesa_free_shader_state(GLcontext *ctx);
 
 
 extern void
@@ -48,6 +62,9 @@ _mesa_reference_shader_program(GLcontext *ctx,
                                struct gl_shader_program **ptr,
                                struct gl_shader_program *shProg);
 
+extern struct gl_shader *
+_mesa_new_shader(GLcontext *ctx, GLuint name, GLenum type);
+
 extern struct gl_shader_program *
 _mesa_lookup_shader_program(GLcontext *ctx, GLuint name);
 
@@ -74,5 +91,8 @@ _mesa_init_shader_state(GLcontext *ctx);
 extern void
 _mesa_free_shader_state(GLcontext *ctx);
 
+#ifdef __cplusplus
+};
+#endif
 
 #endif /* SHADEROBJ_H */