Home | History | Annotate | Download | only in main

Lines Matching full:ctx

98  * This is the default function for ctx->Driver.NewFramebuffer().
104 _mesa_new_framebuffer(struct gl_context *ctx, GLuint name)
107 (void) ctx;
268 * This will typically be called via ctx->Driver.ResizeBuffers() or directly
271 * \note it's possible for ctx to be null since a window can be resized
275 _mesa_resize_framebuffer(struct gl_context *ctx, struct gl_framebuffer *fb,
293 if (rb->AllocStorage(ctx, rb, rb->InternalFormat, width, height)) {
298 _mesa_error(ctx, GL_OUT_OF_MEMORY, "Resizing framebuffer");
308 if (ctx) {
310 _mesa_update_draw_buffer_bounds(ctx);
314 ctx->NewState |= _NEW_BUFFERS;
335 _mesa_resizebuffers( struct gl_context *ctx )
337 ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH( ctx );
340 _mesa_debug(ctx, "glResizeBuffersMESA\n");
342 if (!ctx->Driver.GetBufferSize) {
346 if (ctx->WinSysDrawBuffer) {
348 struct gl_framebuffer *buffer = ctx->WinSysDrawBuffer;
353 ctx->Driver.GetBufferSize( buffer, &newWidth, &newHeight );
357 if (ctx->Driver.ResizeBuffers)
358 ctx->Driver.ResizeBuffers(ctx, buffer, newWidth, newHeight );
362 if (ctx->WinSysReadBuffer
363 && ctx->WinSysReadBuffer != ctx->WinSysDrawBuffer) {
365 struct gl_framebuffer *buffer = ctx->WinSysReadBuffer;
370 ctx->Driver.GetBufferSize( buffer, &newWidth, &newHeight );
374 if (ctx->Driver.ResizeBuffers)
375 ctx->Driver.ResizeBuffers(ctx, buffer, newWidth, newHeight );
379 ctx->NewState |= _NEW_BUFFERS; /* to update scissor / window bounds */
389 GET_CURRENT_CONTEXT(ctx);
391 if (ctx->Extensions.MESA_resize_buffers)
392 _mesa_resizebuffers( ctx );
405 update_framebuffer_size(struct gl_context *ctx, struct gl_framebuffer *fb)
437 * \param ctx the GL context.
440 _mesa_update_draw_buffer_bounds(struct gl_context *ctx)
442 struct gl_framebuffer *buffer = ctx->DrawBuffer;
449 update_framebuffer_size(ctx, buffer);
457 if (ctx->Scissor.Enabled) {
458 if (ctx->Scissor.X > buffer->_Xmin) {
459 buffer->_Xmin = ctx->Scissor.X;
461 if (ctx->Scissor.Y > buffer->_Ymin) {
462 buffer->_Ymin = ctx->Scissor.Y;
464 if (ctx->Scissor.X + ctx->Scissor.Width < buffer->_Xmax) {
465 buffer->_Xmax = ctx->Scissor.X + ctx->Scissor.Width;
467 if (ctx->Scissor.Y + ctx->Scissor.Height < buffer->_Ymax) {
468 buffer->_Ymax = ctx->Scissor.Y + ctx->Scissor.Height;
486 * etc. are satisfied by the fields of ctx->DrawBuffer->Visual. These can
492 * Also note: ctx->DrawBuffer->Visual.depthBits might not equal
493 * ctx->DrawBuffer->Attachment[BUFFER_DEPTH].Renderbuffer.DepthBits.
498 _mesa_update_framebuffer_visual(struct gl_context *ctx,
527 if (_mesa_is_legal_color_format(ctx, baseFormat)) {
535 fb->Visual.sRGBCapable = ctx->Extensions.EXT_framebuffer_sRGB;
636 update_color_draw_buffers(struct gl_context *ctx, struct gl_framebuffer *fb)
660 update_color_read_buffer(struct gl_context *ctx, struct gl_framebuffer *fb)
662 (void) ctx;
693 update_framebuffer(struct gl_context *ctx, struct gl_framebuffer *fb)
700 if (fb->ColorDrawBuffer[0] != ctx->Color.DrawBuffer[0]) {
701 _mesa_drawbuffers(ctx, ctx->Const.MaxDrawBuffers,
702 ctx->Color.DrawBuffer, NULL);
710 _mesa_test_framebuffer_completeness(ctx, fb);
715 * if this FB is bound as ctx->ReadBuffer (and conversely, the
716 * read-state if this FB is bound as ctx->DrawBuffer), but no
719 update_color_draw_buffers(ctx, fb);
720 update_color_read_buffer(ctx, fb);
730 _mesa_update_framebuffer(struct gl_context *ctx)
735 assert(ctx);
736 drawFb = ctx->DrawBuffer;
737 readFb = ctx->ReadBuffer;
739 update_framebuffer(ctx, drawFb);
741 update_framebuffer(ctx, readFb);
754 renderbuffer_exists(struct gl_context *ctx,
763 _mesa_test_framebuffer_completeness(ctx, fb);
832 _mesa_problem(ctx,
851 _mesa_source_buffer_exists(struct gl_context *ctx, GLenum format)
853 return renderbuffer_exists(ctx, ctx->ReadBuffer, format, GL_TRUE);
861 _mesa_dest_buffer_exists(struct gl_context *ctx, GLenum format)
863 return renderbuffer_exists(ctx, ctx->DrawBuffer, format, GL_FALSE);
871 _mesa_get_color_read_format(struct gl_context *ctx)
873 switch (ctx->ReadBuffer->_ColorReadBuffer->Format) {
888 _mesa_get_color_read_type(struct gl_context *ctx)
890 switch (ctx->ReadBuffer->_ColorReadBuffer->Format) {