Lines Matching refs:fbuf
64 struct zink_framebuffer *fbuf) in zink_destroy_framebuffer() argument
66 vkDestroyFramebuffer(screen->dev, fbuf->fb, NULL); in zink_destroy_framebuffer()
67 for (int i = 0; i < ARRAY_SIZE(fbuf->surfaces); ++i) in zink_destroy_framebuffer()
68 pipe_surface_reference(fbuf->surfaces + i, NULL); in zink_destroy_framebuffer()
70 pipe_surface_reference(&fbuf->null_surface, NULL); in zink_destroy_framebuffer()
72 zink_render_pass_reference(screen, &fbuf->rp, NULL); in zink_destroy_framebuffer()
74 FREE(fbuf); in zink_destroy_framebuffer()
81 struct zink_framebuffer *fbuf = CALLOC_STRUCT(zink_framebuffer); in zink_create_framebuffer() local
82 if (!fbuf) in zink_create_framebuffer()
85 pipe_reference_init(&fbuf->reference, 1); in zink_create_framebuffer()
88 fbuf->null_surface = framebuffer_null_surface_init(ctx, fb); in zink_create_framebuffer()
94 surf = zink_surface(fbuf->null_surface); in zink_create_framebuffer()
95 pipe_surface_reference(fbuf->surfaces + i, &surf->base); in zink_create_framebuffer()
99 zink_render_pass_reference(screen, &fbuf->rp, fb->rp); in zink_create_framebuffer()
103 fci.renderPass = fbuf->rp->render_pass; in zink_create_framebuffer()
110 if (vkCreateFramebuffer(screen->dev, &fci, NULL, &fbuf->fb) != VK_SUCCESS) { in zink_create_framebuffer()
111 zink_destroy_framebuffer(screen, fbuf); in zink_create_framebuffer()
115 return fbuf; in zink_create_framebuffer()