dri/nouveau: Split out the scratch helpers to a separate file.
[mesa.git] / src / mesa / drivers / dri / nouveau / nouveau_context.h
index fe64fec930b8b672c374f34e2f286e65a03f79be..7ebc676379e5e8ec0428167ff23d112157702fb7 100644 (file)
@@ -30,6 +30,7 @@
 #include "nouveau_screen.h"
 #include "nouveau_state.h"
 #include "nouveau_bo_state.h"
+#include "nouveau_scratch.h"
 #include "nouveau_render.h"
 
 #include "main/bitset.h"
@@ -57,7 +58,7 @@ struct nouveau_hw_state {
 };
 
 struct nouveau_context {
-       GLcontext base;
+       struct gl_context base;
        __DRIcontext *dri_context;
        struct nouveau_screen *screen;
 
@@ -67,6 +68,12 @@ struct nouveau_context {
        struct nouveau_hw_state hw;
        struct nouveau_bo_state bo;
        struct nouveau_render_state render;
+       struct nouveau_scratch_state scratch;
+
+       struct {
+               GLboolean clear_blocked;
+               int clear_seq;
+       } hierz;
 };
 
 #define to_nouveau_context(ctx)        ((struct nouveau_context *)(ctx))
@@ -89,15 +96,16 @@ struct nouveau_context {
        context_drv(ctx)->emit[NOUVEAU_STATE_##s](ctx, NOUVEAU_STATE_##s)
 
 GLboolean
-nouveau_context_create(const __GLcontextModes *visual, __DRIcontext *dri_ctx,
+nouveau_context_create(gl_api api,
+                      const struct gl_config *visual, __DRIcontext *dri_ctx,
                       void *share_ctx);
 
 GLboolean
-nouveau_context_init(GLcontext *ctx, struct nouveau_screen *screen,
-                    const GLvisual *visual, GLcontext *share_ctx);
+nouveau_context_init(struct gl_context *ctx, struct nouveau_screen *screen,
+                    const struct gl_config *visual, struct gl_context *share_ctx);
 
 void
-nouveau_context_deinit(GLcontext *ctx);
+nouveau_context_deinit(struct gl_context *ctx);
 
 void
 nouveau_context_destroy(__DRIcontext *dri_ctx);
@@ -113,10 +121,10 @@ GLboolean
 nouveau_context_unbind(__DRIcontext *dri_ctx);
 
 void
-nouveau_fallback(GLcontext *ctx, enum nouveau_fallback mode);
+nouveau_fallback(struct gl_context *ctx, enum nouveau_fallback mode);
 
 void
-nouveau_validate_framebuffer(GLcontext *ctx);
+nouveau_validate_framebuffer(struct gl_context *ctx);
 
 #endif