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)
|
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);
|
extern void st_init_driver_functions(struct dd_function_table *functions);
|
||||||
|
|
||||||
|
|
||||||
|
@@ -31,6 +31,8 @@
|
|||||||
#include "mtypes.h"
|
#include "mtypes.h"
|
||||||
|
|
||||||
struct st_context;
|
struct st_context;
|
||||||
|
struct st_framebuffer;
|
||||||
|
|
||||||
struct pipe_context;
|
struct pipe_context;
|
||||||
|
|
||||||
struct st_context *st_create_context( GLcontext *ctx,
|
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 );
|
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_invalidate_state(GLcontext * ctx, GLuint new_state);
|
||||||
|
|
||||||
void st_flush( struct st_context *st );
|
void st_flush( struct st_context *st );
|
||||||
|
Reference in New Issue
Block a user