Lines Matching defs:strb

67    struct st_renderbuffer *strb = st_renderbuffer(rb);
71 free(strb->data);
72 strb->data = NULL;
93 strb->Base.Format = st_pipe_format_to_mesa_format(format);
95 size = _mesa_format_image_size(strb->Base.Format, width, height, 1);
96 strb->data = malloc(size);
97 return strb->data != NULL;
115 struct st_renderbuffer *strb = st_renderbuffer(rb);
121 strb->Base.Width = width;
122 strb->Base.Height = height;
123 strb->Base._BaseFormat = _mesa_base_fbo_format(ctx, internalFormat);
124 strb->defined = GL_FALSE; /* undefined contents now */
126 if (strb->software) {
133 pipe_surface_reference( &strb->surface, NULL );
134 pipe_resource_reference( &strb->texture, NULL );
174 strb->Base.Format = st_pipe_format_to_mesa_format(format);
194 else if (strb->Base.Name != 0) {
204 strb->texture = screen->resource_create(screen, &templ);
206 if (!strb->texture)
209 u_surface_default_template(&surf_tmpl, strb->texture, templ.bind);
210 strb->surface = pipe->create_surface(pipe,
211 strb->texture,
213 if (strb->surface) {
214 assert(strb->surface->texture);
215 assert(strb->surface->format);
216 assert(strb->surface->width == width);
217 assert(strb->surface->height == height);
220 return strb->surface != NULL;
230 struct st_renderbuffer *strb = st_renderbuffer(rb);
233 pipe_surface_release(st->pipe, &strb->surface);
235 pipe_resource_reference(&strb->texture, NULL);
236 free(strb->data);
258 struct st_renderbuffer *strb = ST_CALLOC_STRUCT(st_renderbuffer);
259 if (strb) {
261 _mesa_init_renderbuffer(&strb->Base, name);
262 strb->Base.Delete = st_renderbuffer_delete;
263 strb->Base.AllocStorage = st_renderbuffer_alloc_storage;
264 return &strb->Base;
277 struct st_renderbuffer *strb;
279 strb = ST_CALLOC_STRUCT(st_renderbuffer);
280 if (!strb) {
285 _mesa_init_renderbuffer(&strb->Base, 0);
286 strb->Base.ClassID = 0x4242; /* just a unique value */
287 strb->Base.NumSamples = samples;
288 strb->Base.Format = st_pipe_format_to_mesa_format(format);
289 strb->Base._BaseFormat = _mesa_get_format_base_format(strb->Base.Format);
290 strb->software = sw;
296 strb->Base.InternalFormat = GL_RGBA8;
301 strb->Base.InternalFormat = GL_RGB8;
304 strb->Base.InternalFormat = GL_RGB5_A1;
307 strb->Base.InternalFormat = GL_RGBA4;
310 strb->Base.InternalFormat = GL_RGB565;
313 strb->Base.InternalFormat = GL_DEPTH_COMPONENT16;
316 strb->Base.InternalFormat = GL_DEPTH_COMPONENT32;
322 strb->Base.InternalFormat = GL_DEPTH24_STENCIL8_EXT;
325 strb->Base.InternalFormat = GL_STENCIL_INDEX8_EXT;
329 strb->Base.InternalFormat = GL_RGBA16_SNORM;
332 strb->Base.InternalFormat = GL_R8;
335 strb->Base.InternalFormat = GL_RG8;
338 strb->Base.InternalFormat = GL_R16;
341 strb->Base.InternalFormat = GL_RG16;
344 strb->Base.InternalFormat = GL_RGBA32F;
347 strb->Base.InternalFormat = GL_RGBA16F;
353 free(strb);
358 strb->Base.Delete = st_renderbuffer_delete;
359 strb->Base.AllocStorage = st_renderbuffer_alloc_storage;
362 strb->surface = NULL;
364 return &strb->Base;
389 struct st_renderbuffer *strb;
419 strb = st_renderbuffer(rb);
421 assert(strb->Base.RefCount > 0);
427 strb->rtt = stObj;
428 strb->rtt_level = att->TextureLevel;
429 strb->rtt_face = att->CubeMapFace;
430 strb->rtt_slice = att->Zoffset;
437 pipe_resource_reference( &strb->texture, pt );
439 pipe_surface_release(pipe, &strb->surface);
441 assert(strb->rtt_level <= strb->texture->last_level);
446 ? strb->texture->format : util_format_linear(strb->texture->format);
448 surf_tmpl.u.tex.level = strb->rtt_level;
449 surf_tmpl.u.tex.first_layer = strb->rtt_face + strb->rtt_slice;
450 surf_tmpl.u.tex.last_layer = strb->rtt_face + strb->rtt_slice;
451 strb->surface = pipe->create_surface(pipe,
452 strb->texture,
455 strb->Base.Format = st_pipe_format_to_mesa_format(pt->format);
479 struct st_renderbuffer *strb = st_renderbuffer(att->Renderbuffer);
481 if (!strb)
484 strb->rtt = NULL;
708 struct st_renderbuffer *strb = st_renderbuffer(rb);
714 if (strb->software) {
716 if (strb->data) {
717 GLint bpp = _mesa_get_format_bytes(strb->Base.Format);
718 GLint stride = _mesa_format_row_stride(strb->Base.Format,
719 strb->Base.Width);
720 *mapOut = (GLubyte *) strb->data + y * stride + x * bpp;
743 y2 = strb->Base.Height - y - h;
747 strb->transfer = pipe_get_transfer(pipe,
748 strb->texture,
749 strb->rtt_level,
750 strb->rtt_face + strb->rtt_slice,
752 if (strb->transfer) {
753 GLubyte *map = pipe_transfer_map(pipe, strb->transfer);
755 *rowStrideOut = -strb->transfer->stride;
756 map += (h - 1) * strb->transfer->stride;
759 *rowStrideOut = strb->transfer->stride;
778 struct st_renderbuffer *strb = st_renderbuffer(rb);
781 if (strb->software) {
786 pipe_transfer_unmap(pipe, strb->transfer);
787 pipe->transfer_destroy(pipe, strb->transfer);
788 strb->transfer = NULL;