#include "context.h"
#include "enums.h"
#include "fbobject.h"
+#include "hash.h"
#include "mtypes.h"
#include "util/bitscan.h"
#include "util/u_math.h"
}
+void GLAPIENTRY
+_mesa_FramebufferDrawBufferEXT(GLuint framebuffer, GLenum buf)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ struct gl_framebuffer *fb;
+
+ if (framebuffer) {
+ fb = _mesa_lookup_framebuffer_dsa(ctx, framebuffer,
+ "glFramebufferDrawBufferEXT");
+ if (!fb)
+ return;
+ }
+ else
+ fb = ctx->WinSysDrawBuffer;
+
+ draw_buffer_error(ctx, fb, buf, "glFramebufferDrawBufferEXT");
+}
+
+
void GLAPIENTRY
_mesa_NamedFramebufferDrawBuffer(GLuint framebuffer, GLenum buf)
{
draw_buffers_error(ctx, ctx->DrawBuffer, n, buffers, "glDrawBuffers");
}
+void GLAPIENTRY
+_mesa_FramebufferDrawBuffersEXT(GLuint framebuffer, GLsizei n,
+ const GLenum *bufs)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ struct gl_framebuffer *fb;
+
+ if (framebuffer) {
+ fb = _mesa_lookup_framebuffer_dsa(ctx, framebuffer,
+ "glFramebufferDrawBuffersEXT");
+ if (!fb)
+ return;
+ }
+ else
+ fb = ctx->WinSysDrawBuffer;
+
+ draw_buffers_error(ctx, fb, n, bufs, "glFramebufferDrawBuffersEXT");
+}
void GLAPIENTRY
_mesa_NamedFramebufferDrawBuffers_no_error(GLuint framebuffer, GLsizei n,
}
+void GLAPIENTRY
+_mesa_FramebufferReadBufferEXT(GLuint framebuffer, GLenum buf)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ struct gl_framebuffer *fb;
+
+ if (framebuffer) {
+ fb = _mesa_lookup_framebuffer_dsa(ctx, framebuffer,
+ "glFramebufferReadBufferEXT");
+ if (!fb)
+ return;
+ }
+ else
+ fb = ctx->WinSysDrawBuffer;
+
+ read_buffer_err(ctx, fb, buf, "glFramebufferReadBufferEXT");
+}
+
+
void GLAPIENTRY
_mesa_NamedFramebufferReadBuffer(GLuint framebuffer, GLenum src)
{