#ifndef FRAMEBUFFER_H
#define FRAMEBUFFER_H
extern struct gl_framebuffer *
_mesa_create_framebuffer(const GLvisual *visual);
extern struct gl_framebuffer *
_mesa_new_framebuffer(GLcontext *ctx, GLuint name);
extern void
_mesa_initialize_framebuffer(struct gl_framebuffer *fb, const GLvisual *visual);
extern void
_mesa_destroy_framebuffer(struct gl_framebuffer *buffer);
extern void
_mesa_free_framebuffer_data(struct gl_framebuffer *buffer);
extern void
_mesa_reference_framebuffer(struct gl_framebuffer **ptr,
struct gl_framebuffer *fb);
extern void
_mesa_unreference_framebuffer(struct gl_framebuffer **fb);
extern void
_mesa_resize_framebuffer(GLcontext *ctx, struct gl_framebuffer *fb,
GLuint width, GLuint height);
extern void
_mesa_update_draw_buffer_bounds(GLcontext *ctx);
extern void
_mesa_update_framebuffer_visual(struct gl_framebuffer *fb);
extern void
_mesa_update_depth_buffer(GLcontext *ctx, struct gl_framebuffer *fb,
GLuint attIndex);
extern void
_mesa_update_stencil_buffer(GLcontext *ctx, struct gl_framebuffer *fb,
GLuint attIndex);
extern void
_mesa_update_framebuffer(GLcontext *ctx);
extern GLboolean
_mesa_source_buffer_exists(GLcontext *ctx, GLenum format);
extern GLboolean
_mesa_dest_buffer_exists(GLcontext *ctx, GLenum format);
#endif