X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fmesa%2Fmain%2Ffbobject.h;h=54093940733450f3fb4c1c2b88667af575ab7263;hb=54f425b5cefd1e40f315a4f8747b9a3db29ab9d4;hp=222c58d00a2476278cafbc391cd537f6a6ee69df;hpb=3deaa01c2bd576ae81fc6d3ea67c583cb3c22159;p=mesa.git diff --git a/src/mesa/main/fbobject.h b/src/mesa/main/fbobject.h index 222c58d00a2..54093940733 100644 --- a/src/mesa/main/fbobject.h +++ b/src/mesa/main/fbobject.h @@ -1,8 +1,8 @@ /* * Mesa 3-D graphics library - * Version: 6.3 + * Version: 7.1 * - * Copyright (C) 1999-2005 Brian Paul All Rights Reserved. + * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -27,96 +27,120 @@ #define FBOBJECT_H -struct gl_render_buffer_object -{ - GLint RefCount; - GLuint Name; - GLuint Width, Height; -}; +extern void +_mesa_init_fbobjects(GLcontext *ctx); +extern struct gl_renderbuffer * +_mesa_lookup_renderbuffer(GLcontext *ctx, GLuint id); -struct gl_render_buffer_attachment -{ - GLenum Type; /* GL_NONE or GL_TEXTURE or GL_RENDERBUFFER_EXT */ - /* IF Type == GL_RENDERBUFFER_EXT: */ - struct gl_render_buffer_object *Renderbuffer; - /* IF Type == GL_TEXTURE: */ - struct gl_texture_object *Texture; - GLuint TextureLevel; - GLuint CubeMapFace; /* 0 .. 5, for Cube map textures */ - GLuint Zoffset; /* for 3D textures */ -}; +extern struct gl_framebuffer * +_mesa_lookup_framebuffer(GLcontext *ctx, GLuint id); +extern struct gl_renderbuffer_attachment * +_mesa_get_attachment(GLcontext *ctx, struct gl_framebuffer *fb, + GLenum attachment); -struct gl_frame_buffer_object -{ - GLint RefCount; - GLuint Name; - struct gl_render_buffer_attachment ColorAttachment[MAX_COLOR_ATTACHMENTS]; - struct gl_render_buffer_attachment DepthAttachment; - struct gl_render_buffer_attachment StencilAttachment; -}; +extern void +_mesa_remove_attachment(GLcontext *ctx, + struct gl_renderbuffer_attachment *att); +extern void +_mesa_set_texture_attachment(GLcontext *ctx, + struct gl_framebuffer *fb, + struct gl_renderbuffer_attachment *att, + struct gl_texture_object *texObj, + GLenum texTarget, GLuint level, GLuint zoffset); -extern GLboolean -_mesa_IsRenderbufferEXT(GLuint renderbuffer); +extern void +_mesa_set_renderbuffer_attachment(GLcontext *ctx, + struct gl_renderbuffer_attachment *att, + struct gl_renderbuffer *rb); extern void -_mesa_BindRenderbufferEXT(GLenum target, GLuint renderbuffer); +_mesa_framebuffer_renderbuffer(GLcontext *ctx, struct gl_framebuffer *fb, + GLenum attachment, struct gl_renderbuffer *rb); extern void +_mesa_test_framebuffer_completeness(GLcontext *ctx, struct gl_framebuffer *fb); + +extern GLenum +_mesa_base_fbo_format(GLcontext *ctx, GLenum internalFormat); + +extern GLboolean GLAPIENTRY +_mesa_IsRenderbufferEXT(GLuint renderbuffer); + +extern void GLAPIENTRY +_mesa_BindRenderbufferEXT(GLenum target, GLuint renderbuffer); + +extern void GLAPIENTRY _mesa_DeleteRenderbuffersEXT(GLsizei n, const GLuint *renderbuffers); -extern void +extern void GLAPIENTRY _mesa_GenRenderbuffersEXT(GLsizei n, GLuint *renderbuffers); -extern void +extern void GLAPIENTRY _mesa_RenderbufferStorageEXT(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); -extern void -_mesa_GetRenderbufferParameterivEXT(GLenum target, GLenum pname, GLint *params); +extern void GLAPIENTRY +_mesa_RenderbufferStorageMultisample(GLenum target, GLsizei samples, + GLenum internalformat, + GLsizei width, GLsizei height); + +extern void GLAPIENTRY +_mesa_GetRenderbufferParameterivEXT(GLenum target, GLenum pname, + GLint *params); -extern GLboolean +extern GLboolean GLAPIENTRY _mesa_IsFramebufferEXT(GLuint framebuffer); -extern void +extern void GLAPIENTRY _mesa_BindFramebufferEXT(GLenum target, GLuint framebuffer); -extern void +extern void GLAPIENTRY _mesa_DeleteFramebuffersEXT(GLsizei n, const GLuint *framebuffers); -extern void +extern void GLAPIENTRY _mesa_GenFramebuffersEXT(GLsizei n, GLuint *framebuffers); -extern GLenum +extern GLenum GLAPIENTRY _mesa_CheckFramebufferStatusEXT(GLenum target); -extern void +extern void GLAPIENTRY _mesa_FramebufferTexture1DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -extern void +extern void GLAPIENTRY _mesa_FramebufferTexture2DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -extern void +extern void GLAPIENTRY _mesa_FramebufferTexture3DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); -extern void +extern void GLAPIENTRY +_mesa_FramebufferTextureLayerEXT(GLenum target, GLenum attachment, + GLuint texture, GLint level, GLint layer); + +extern void GLAPIENTRY _mesa_FramebufferRenderbufferEXT(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); -extern void +extern void GLAPIENTRY _mesa_GetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment, GLenum pname, GLint *params); -extern void +extern void GLAPIENTRY _mesa_GenerateMipmapEXT(GLenum target); +extern void GLAPIENTRY +_mesa_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, + GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, + GLbitfield mask, GLenum filter); + + #endif /* FBOBJECT_H */