summaryrefslogtreecommitdiff
path: root/src/mesa/main/arrayobj.h
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2009-05-07 13:52:26 -0600
committerBrian Paul <brianp@vmware.com>2009-05-07 14:34:09 -0600
commit1030bf0ded2a88a5e27f7a4d393c11cfde3d3c5a (patch)
tree6a99a5ef383290ec8cf494931f9434a736e30885 /src/mesa/main/arrayobj.h
parent9bb6684799f00fabc313ee50be671454e498d8a9 (diff)
mesa: reference counting for gl_array_object
Every kind of object that can be shared by multiple contexts should be refcounted.
Diffstat (limited to 'src/mesa/main/arrayobj.h')
-rw-r--r--src/mesa/main/arrayobj.h23
1 files changed, 16 insertions, 7 deletions
diff --git a/src/mesa/main/arrayobj.h b/src/mesa/main/arrayobj.h
index c7d66ec166..9c4036af5a 100644
--- a/src/mesa/main/arrayobj.h
+++ b/src/mesa/main/arrayobj.h
@@ -41,17 +41,26 @@
* Internal functions
*/
-struct gl_array_object * _mesa_new_array_object( GLcontext *ctx,
- GLuint name );
+extern struct gl_array_object *
+_mesa_new_array_object( GLcontext *ctx, GLuint name );
-void _mesa_delete_array_object( GLcontext *ctx, struct gl_array_object *obj );
+extern void
+_mesa_delete_array_object( GLcontext *ctx, struct gl_array_object *obj );
-void _mesa_initialize_array_object( GLcontext *ctx,
- struct gl_array_object *obj, GLuint name );
+extern void
+_mesa_reference_array_object(GLcontext *ctx,
+ struct gl_array_object **ptr,
+ struct gl_array_object *arrayObj);
-void _mesa_save_array_object( GLcontext *ctx, struct gl_array_object *obj );
+extern void
+_mesa_initialize_array_object( GLcontext *ctx,
+ struct gl_array_object *obj, GLuint name );
-void _mesa_remove_array_object( GLcontext *ctx, struct gl_array_object *obj );
+extern void
+_mesa_save_array_object( GLcontext *ctx, struct gl_array_object *obj );
+
+extern void
+_mesa_remove_array_object( GLcontext *ctx, struct gl_array_object *obj );