#include using namespace metal; struct GammaTransferParams { float G; float A; float B; float C; float D; float E; float F; uint padding; }; struct ExternalTextureParams { uint numPlanes; float3x4 yuvToRgbConversionMatrix; GammaTransferParams gammaDecodeParams; GammaTransferParams gammaEncodeParams; float3x3 gamutConversionMatrix; }; void textureDimensions_ba1481(texture2d tint_symbol_1) { int2 res = int2(tint_symbol_1.get_width(), tint_symbol_1.get_height()); } struct tint_symbol { float4 value [[position]]; }; float4 vertex_main_inner(texture2d tint_symbol_2) { textureDimensions_ba1481(tint_symbol_2); return float4(); } vertex tint_symbol vertex_main(texture2d tint_symbol_3 [[texture(0)]]) { float4 const inner_result = vertex_main_inner(tint_symbol_3); tint_symbol wrapper_result = {}; wrapper_result.value = inner_result; return wrapper_result; } fragment void fragment_main(texture2d tint_symbol_4 [[texture(0)]]) { textureDimensions_ba1481(tint_symbol_4); return; } kernel void compute_main(texture2d tint_symbol_5 [[texture(0)]]) { textureDimensions_ba1481(tint_symbol_5); return; }