intel: Add a function for creating a private window system buffer.
Reviewed-by: Chad Versace <chad.versace@linux.intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:

committed by
Chad Versace

parent
bf484024b9
commit
433ff3e16e
@@ -228,8 +228,6 @@ intel_alloc_renderbuffer_storage(struct gl_context * ctx, struct gl_renderbuffer
|
|||||||
struct intel_renderbuffer *irb = intel_renderbuffer(rb);
|
struct intel_renderbuffer *irb = intel_renderbuffer(rb);
|
||||||
rb->NumSamples = quantize_num_samples(intel, rb->NumSamples);
|
rb->NumSamples = quantize_num_samples(intel, rb->NumSamples);
|
||||||
|
|
||||||
ASSERT(rb->Name != 0);
|
|
||||||
|
|
||||||
switch (internalFormat) {
|
switch (internalFormat) {
|
||||||
default:
|
default:
|
||||||
/* Use the same format-choice logic as for textures.
|
/* Use the same format-choice logic as for textures.
|
||||||
@@ -427,6 +425,23 @@ intel_create_renderbuffer(gl_format format)
|
|||||||
return irb;
|
return irb;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Private window-system buffers (as opposed to ones shared with the display
|
||||||
|
* server created with intel_create_renderbuffer()) are most similar in their
|
||||||
|
* handling to user-created renderbuffers, but they have a resize handler that
|
||||||
|
* may be called at intel_update_renderbuffers() time.
|
||||||
|
*/
|
||||||
|
struct intel_renderbuffer *
|
||||||
|
intel_create_private_renderbuffer(gl_format format)
|
||||||
|
{
|
||||||
|
struct intel_renderbuffer *irb;
|
||||||
|
|
||||||
|
irb = intel_create_renderbuffer(format);
|
||||||
|
irb->Base.Base.AllocStorage = intel_alloc_renderbuffer_storage;
|
||||||
|
|
||||||
|
return irb;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a new renderbuffer object.
|
* Create a new renderbuffer object.
|
||||||
* Typically called via glBindRenderbufferEXT().
|
* Typically called via glBindRenderbufferEXT().
|
||||||
|
@@ -136,6 +136,9 @@ intel_framebuffer_has_hiz(struct gl_framebuffer *fb);
|
|||||||
extern struct intel_renderbuffer *
|
extern struct intel_renderbuffer *
|
||||||
intel_create_renderbuffer(gl_format format);
|
intel_create_renderbuffer(gl_format format);
|
||||||
|
|
||||||
|
struct intel_renderbuffer *
|
||||||
|
intel_create_private_renderbuffer(gl_format format);
|
||||||
|
|
||||||
struct gl_renderbuffer*
|
struct gl_renderbuffer*
|
||||||
intel_create_wrapped_renderbuffer(struct gl_context * ctx,
|
intel_create_wrapped_renderbuffer(struct gl_context * ctx,
|
||||||
int width, int height,
|
int width, int height,
|
||||||
|
Reference in New Issue
Block a user