Introduce st_framebuffer type and st_create_framebuffer(), st_make_current()
This commit is contained in:
@@ -155,6 +155,29 @@ void st_destroy_context( struct st_context *st )
|
||||
}
|
||||
|
||||
|
||||
struct st_framebuffer *st_create_framebuffer( const __GLcontextModes *visual )
|
||||
{
|
||||
struct st_framebuffer *stfb
|
||||
= CALLOC_STRUCT(st_framebuffer);
|
||||
if (stfb) {
|
||||
}
|
||||
return stfb;
|
||||
}
|
||||
|
||||
|
||||
void st_make_current(struct st_context *st,
|
||||
struct st_framebuffer *draw,
|
||||
struct st_framebuffer *read)
|
||||
{
|
||||
if (st) {
|
||||
_mesa_make_current(st->ctx, &draw->Base, &read->Base);
|
||||
}
|
||||
else {
|
||||
_mesa_make_current(NULL, NULL, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
void st_init_driver_functions(struct dd_function_table *functions)
|
||||
{
|
||||
|
@@ -167,6 +167,16 @@ static INLINE struct st_context *st_context(GLcontext *ctx)
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Wrapper for GLframebuffer, nothing extra for now.
|
||||
* This is an opaque type to the outside world.
|
||||
*/
|
||||
struct st_framebuffer
|
||||
{
|
||||
GLframebuffer Base;
|
||||
};
|
||||
|
||||
|
||||
extern void st_init_driver_functions(struct dd_function_table *functions);
|
||||
|
||||
|
||||
|
@@ -31,6 +31,8 @@
|
||||
#include "mtypes.h"
|
||||
|
||||
struct st_context;
|
||||
struct st_framebuffer;
|
||||
|
||||
struct pipe_context;
|
||||
|
||||
struct st_context *st_create_context( GLcontext *ctx,
|
||||
@@ -44,6 +46,12 @@ void st_destroy_context( struct st_context *st );
|
||||
|
||||
void st_destroy_context2( struct st_context *st );
|
||||
|
||||
struct st_framebuffer *st_create_framebuffer( const __GLcontextModes *visual );
|
||||
|
||||
void st_make_current(struct st_context *st,
|
||||
struct st_framebuffer *draw,
|
||||
struct st_framebuffer *read);
|
||||
|
||||
void st_invalidate_state(GLcontext * ctx, GLuint new_state);
|
||||
|
||||
void st_flush( struct st_context *st );
|
||||
|
Reference in New Issue
Block a user