Lines Matching refs:stImage
151 struct st_texture_image *stImage = st_texture_image(texImage);
155 if (stImage->pt) {
156 pipe_resource_reference(&stImage->pt, NULL);
159 if (stImage->TexData) {
160 _mesa_align_free(stImage->TexData);
161 stImage->TexData = NULL;
175 struct st_texture_image *stImage = st_texture_image(texImage);
187 map = st_texture_image_map(st, stImage, slice, pipeMode, x, y, w, h);
190 *rowStrideOut = stImage->transfer->stride;
206 struct st_texture_image *stImage = st_texture_image(texImage);
207 st_texture_image_unmap(st, stImage);
325 const struct st_texture_image *stImage)
337 stImage->base.Width2,
338 stImage->base.Height2,
339 stImage->base.Depth2,
340 stImage->base.Level,
360 stImage->base._BaseFormat == GL_DEPTH_COMPONENT ||
361 stImage->base._BaseFormat == GL_DEPTH_STENCIL_EXT) &&
363 stImage->base.Level == 0) {
378 fmt = st_mesa_format_to_pipe_format(stImage->base.TexFormat);
414 struct st_texture_image *stImage = st_texture_image(texImage);
423 assert(!stImage->TexData);
424 assert(!stImage->pt); /* xxx this might be wrong */
431 pipe_resource_reference(&stImage->pt, stObj->pt);
440 if (!guess_and_alloc_texture(st, stObj, stImage)) {
445 if (!guess_and_alloc_texture(st, stObj, stImage)) {
454 pipe_resource_reference(&stImage->pt, stObj->pt);
455 assert(stImage->pt);
474 stImage->pt = st_texture_create(st,
483 return stImage->pt != NULL;
556 struct st_texture_image *stImage = st_texture_image(texImage);
623 if (_mesa_format_matches_format_and_type(stImage->base.TexFormat,
627 const uint bytesPerRow = width * util_format_get_blocksize(stImage->pt->format);
690 struct st_texture_image *stImage = st_texture_image(texImage);
692 if (stImage->pt && util_format_is_s3tc(stImage->pt->format)) {
716 struct st_texture_image *stImage,
745 util_format_is_depth_and_stencil(stImage->pt->format))
751 texDest = st_texture_image_map(st, stImage, destZ, transfer_usage,
780 pipe_put_tile_z(pipe, stImage->transfer, 0, row, width, 1, data);
796 const GLint dstRowStride = stImage->transfer->stride;
797 struct gl_texture_image *texImage = &stImage->base;
835 st_texture_image_unmap(st, stImage);
921 struct st_texture_image *stImage = st_texture_image(texImage);
951 if (!strb || !strb->surface || !stImage->pt) {
952 debug_printf("%s: null strb or stImage\n", __FUNCTION__);
964 assert(stImage->pt);
967 dest_format = stImage->pt->format;
1005 /* If stImage->pt is an independent image (not a pointer into a full
1006 * mipmap) stImage->pt.last_level will be zero and we need to use that
1009 dstLevel = MIN2(stImage->base.Level, stImage->pt->last_level);
1014 stImage->pt,
1016 destX, destY, destZ + stImage->base.Face,
1064 surf_tmpl.format = util_format_linear(stImage->pt->format);
1066 surf_tmpl.u.tex.level = stImage->base.Level;
1067 surf_tmpl.u.tex.first_layer = stImage->base.Face + destZ;
1068 surf_tmpl.u.tex.last_layer = stImage->base.Face + destZ;
1070 dest_surface = pipe->create_surface(pipe, stImage->pt,
1096 strb, stImage, texBaseFormat,
1103 * Copy image data from stImage into the texture object 'stObj' at level
1110 struct st_texture_image *stImage)
1115 stObj->base.Image[stImage->base.Face][dstLevel];
1117 assert(dstImage->Width == stImage->base.Width);
1118 assert(dstImage->Height == stImage->base.Height);
1119 assert(dstImage->Depth == stImage->base.Depth);
1122 if (stImage->pt) {
1126 if (stImage->pt->last_level == 0)
1129 src_level = stImage->base.Level;
1131 assert(src_level <= stImage->pt->last_level);
1132 assert(u_minify(stImage->pt->width0, src_level) == stImage->base.Width);
1133 assert(stImage->pt->target == PIPE_TEXTURE_1D_ARRAY ||
1134 u_minify(stImage->pt->height0, src_level) == stImage->base.Height);
1135 assert(stImage->pt->target == PIPE_TEXTURE_2D_ARRAY ||
1136 u_minify(stImage->pt->depth0, src_level) == stImage->base.Depth);
1140 stImage->pt, src_level, /* src texture, level */
1141 stImage->base.Face);
1143 pipe_resource_reference(&stImage->pt, NULL);
1145 else if (stImage->TexData) {
1149 GLuint srcRowStride = stImage->base.Width * blockSize;
1150 GLuint srcSliceStride = stImage->base.Height * srcRowStride;
1153 stImage->base.Face,
1155 stImage->TexData,
1158 _mesa_align_free(stImage->TexData);
1159 stImage->TexData = NULL;
1162 pipe_resource_reference(&stImage->pt, stObj->pt);
1281 struct st_texture_image *stImage =
1286 if (stImage && stObj->pt != stImage->pt) {
1288 (stImage->base.Width == u_minify(stObj->width0, level) &&
1289 stImage->base.Height == u_minify(stObj->height0, level) &&
1290 stImage->base.Depth == u_minify(stObj->depth0, level))) {
1292 copy_image_data_to_texture(st, stObj, level, stImage);
1351 struct st_texture_image *stImage =
1353 pipe_resource_reference(&stImage->pt, stObj->pt);