• Home
  • Raw
  • Download

Lines Matching refs:stfb

181 st_framebuffer_validate(struct st_framebuffer *stfb,  in st_framebuffer_validate()  argument
188 int32_t new_stamp = p_atomic_read(&stfb->iface->stamp); in st_framebuffer_validate()
190 if (stfb->iface_stamp == new_stamp) in st_framebuffer_validate()
195 if (!stfb->iface->validate(stfb->iface, stfb->statts, in st_framebuffer_validate()
196 stfb->num_statts, textures)) in st_framebuffer_validate()
199 stfb->iface_stamp = new_stamp; in st_framebuffer_validate()
200 new_stamp = p_atomic_read(&stfb->iface->stamp); in st_framebuffer_validate()
201 } while(stfb->iface_stamp != new_stamp); in st_framebuffer_validate()
203 width = stfb->Base.Width; in st_framebuffer_validate()
204 height = stfb->Base.Height; in st_framebuffer_validate()
206 for (i = 0; i < stfb->num_statts; i++) { in st_framebuffer_validate()
214 idx = attachment_to_buffer_index(stfb->statts[i]); in st_framebuffer_validate()
220 strb = st_renderbuffer(stfb->Base.Attachment[idx].Renderbuffer); in st_framebuffer_validate()
249 ++stfb->stamp; in st_framebuffer_validate()
250 _mesa_resize_framebuffer(st->ctx, &stfb->Base, width, height); in st_framebuffer_validate()
258 st_framebuffer_update_attachments(struct st_framebuffer *stfb) in st_framebuffer_update_attachments() argument
262 stfb->num_statts = 0; in st_framebuffer_update_attachments()
267 strb = st_renderbuffer(stfb->Base.Attachment[idx].Renderbuffer); in st_framebuffer_update_attachments()
273 st_visual_have_buffers(stfb->iface->visual, 1 << statt)) in st_framebuffer_update_attachments()
274 stfb->statts[stfb->num_statts++] = statt; in st_framebuffer_update_attachments()
276 stfb->stamp++; in st_framebuffer_update_attachments()
283 st_framebuffer_add_renderbuffer(struct st_framebuffer *stfb, in st_framebuffer_add_renderbuffer() argument
291 if (!stfb->iface) in st_framebuffer_add_renderbuffer()
300 format = stfb->iface->visual->depth_stencil_format; in st_framebuffer_add_renderbuffer()
304 format = stfb->iface->visual->accum_format; in st_framebuffer_add_renderbuffer()
308 format = stfb->iface->visual->color_format; in st_framebuffer_add_renderbuffer()
316 samples = stfb->iface->visual->samples; in st_framebuffer_add_renderbuffer()
325 _mesa_add_renderbuffer(&stfb->Base, idx, rb); in st_framebuffer_add_renderbuffer()
329 _mesa_add_renderbuffer(&stfb->Base, BUFFER_DEPTH, rb); in st_framebuffer_add_renderbuffer()
331 _mesa_add_renderbuffer(&stfb->Base, BUFFER_STENCIL, rb); in st_framebuffer_add_renderbuffer()
413 struct st_framebuffer *stfb; in st_framebuffer_create() local
420 stfb = CALLOC_STRUCT(st_framebuffer); in st_framebuffer_create()
421 if (!stfb) in st_framebuffer_create()
425 _mesa_initialize_window_framebuffer(&stfb->Base, &mode); in st_framebuffer_create()
427 stfb->iface = stfbi; in st_framebuffer_create()
428 stfb->iface_stamp = p_atomic_read(&stfbi->stamp) - 1; in st_framebuffer_create()
431 idx = stfb->Base._ColorDrawBufferIndexes[0]; in st_framebuffer_create()
432 if (!st_framebuffer_add_renderbuffer(stfb, idx)) { in st_framebuffer_create()
433 FREE(stfb); in st_framebuffer_create()
437 st_framebuffer_add_renderbuffer(stfb, BUFFER_DEPTH); in st_framebuffer_create()
438 st_framebuffer_add_renderbuffer(stfb, BUFFER_ACCUM); in st_framebuffer_create()
440 stfb->stamp = 0; in st_framebuffer_create()
441 st_framebuffer_update_attachments(stfb); in st_framebuffer_create()
443 stfb->Base.Initialized = GL_TRUE; in st_framebuffer_create()
445 return stfb; in st_framebuffer_create()
453 struct st_framebuffer *stfb) in st_framebuffer_reference() argument
455 struct gl_framebuffer *fb = &stfb->Base; in st_framebuffer_reference()
690 struct st_framebuffer *cur = st_ws_framebuffer(fb), *stfb = NULL; in st_framebuffer_reuse_or_create() local
696 st_framebuffer_reference(&stfb, cur); in st_framebuffer_reuse_or_create()
700 stfb = st_framebuffer_create(stfbi); in st_framebuffer_reuse_or_create()
703 return stfb; in st_framebuffer_reuse_or_create()
776 struct st_framebuffer *stfb = st_ws_framebuffer(st->ctx->DrawBuffer); in st_manager_flush_frontbuffer() local
779 if (stfb) in st_manager_flush_frontbuffer()
780 strb = st_renderbuffer(stfb->Base.Attachment[BUFFER_FRONT_LEFT].Renderbuffer); in st_manager_flush_frontbuffer()
785 assert(&stfb->Base != _mesa_get_incomplete_framebuffer()); in st_manager_flush_frontbuffer()
786 stfb->iface->flush_front(stfb->iface, ST_ATTACHMENT_FRONT_LEFT); in st_manager_flush_frontbuffer()
844 struct st_framebuffer *stfb = st_ws_framebuffer(fb); in st_manager_add_color_renderbuffer() local
847 if (!stfb) in st_manager_add_color_renderbuffer()
850 if (stfb->Base.Attachment[idx].Renderbuffer) in st_manager_add_color_renderbuffer()
864 if (!st_framebuffer_add_renderbuffer(stfb, idx)) in st_manager_add_color_renderbuffer()
867 st_framebuffer_update_attachments(stfb); in st_manager_add_color_renderbuffer()
874 if(stfb->iface) in st_manager_add_color_renderbuffer()
875 stfb->iface_stamp = p_atomic_read(&stfb->iface->stamp) - 1; in st_manager_add_color_renderbuffer()