| #include <metal_stdlib> |
| |
| 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<float, access::sample> 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<float, access::sample> tint_symbol_2) { |
| textureDimensions_ba1481(tint_symbol_2); |
| return float4(0.0f); |
| } |
| |
| vertex tint_symbol vertex_main(texture2d<float, access::sample> 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<float, access::sample> tint_symbol_4 [[texture(0)]]) { |
| textureDimensions_ba1481(tint_symbol_4); |
| return; |
| } |
| |
| kernel void compute_main(texture2d<float, access::sample> tint_symbol_5 [[texture(0)]]) { |
| textureDimensions_ba1481(tint_symbol_5); |
| return; |
| } |
| |