Lines Matching defs:src
322 static inline T swizzleColorChannel (const tcu::Vector<T, 4>& src, TextureSwizzleComponent swizzle)
326 case TEXTURESWIZZLECOMPONENT_R: return src[0];
327 case TEXTURESWIZZLECOMPONENT_G: return src[1];
328 case TEXTURESWIZZLECOMPONENT_B: return src[2];
329 case TEXTURESWIZZLECOMPONENT_A: return src[3];
337 static inline tcu::Vector<T, 4> swizzleColor (const tcu::Vector<T, 4>& src, const MaybeTextureSwizzle& swizzle)
343 result[i] = swizzleColorChannel(src, swizzle.getSwizzle()[i]);
348 static void swizzlePixels (const PixelBufferAccess& dst, const ConstPixelBufferAccess& src, const MaybeTextureSwizzle& swizzle)
350 DE_ASSERT(dst.getWidth() == src.getWidth() &&
351 dst.getHeight() == src.getHeight() &&
352 dst.getDepth() == src.getDepth());
353 for (int z = 0; z < src.getDepth(); z++)
354 for (int y = 0; y < src.getHeight(); y++)
355 for (int x = 0; x < src.getWidth(); x++)
356 dst.setPixel(swizzleColor(src.getPixelT<T>(x, y, z), swizzle), x, y, z);
359 static void swizzlePixels (const PixelBufferAccess& dst, const ConstPixelBufferAccess& src, const MaybeTextureSwizzle& swizzle)
365 tcu::copy(dst, src);
367 swizzlePixels<float>(dst, src, swizzle);
369 swizzlePixels<deUint32>(dst, src, swizzle);
371 swizzlePixels<deInt32>(dst, src, swizzle);
376 static void swizzleTexture (tcu::Texture2D& dst, const tcu::Texture2D& src, const MaybeTextureSwizzle& swizzle)
378 dst = tcu::Texture2D(src.getFormat(), src.getWidth(), src.getHeight());
379 for (int levelNdx = 0; levelNdx < src.getNumLevels(); levelNdx++)
381 if (src.isLevelEmpty(levelNdx))
384 swizzlePixels(dst.getLevel(levelNdx), src.getLevel(levelNdx), swizzle);
388 static void swizzleTexture (tcu::Texture2DArray& dst, const tcu::Texture2DArray& src, const MaybeTextureSwizzle& swizzle)
390 dst = tcu::Texture2DArray(src.getFormat(), src.getWidth(), src.getHeight(), src.getNumLayers());
391 for (int levelNdx = 0; levelNdx < src.getNumLevels(); levelNdx++)
393 if (src.isLevelEmpty(levelNdx))
396 swizzlePixels(dst.getLevel(levelNdx), src.getLevel(levelNdx), swizzle);
400 static void swizzleTexture (tcu::TextureCube& dst, const tcu::TextureCube& src, const MaybeTextureSwizzle& swizzle)
402 dst = tcu::TextureCube(src.getFormat(), src.getSize());
406 for (int levelNdx = 0; levelNdx < src.getNumLevels(); levelNdx++)
408 if (src.isLevelEmpty(face, levelNdx))
411 swizzlePixels(dst.getLevelFace(levelNdx, face), src.getLevelFace(levelNdx, face), swizzle);