Home | History | Annotate | Download | only in mtl
      1 /*
      2  * Copyright 2017 Google Inc.
      3  *
      4  * Use of this source code is governed by a BSD-style license that can be
      5  * found in the LICENSE file.
      6  */
      7 
      8 #ifndef GrMtlUtil_DEFINED
      9 #define GrMtlUtil_DEFINED
     10 
     11 #include "GrTypes.h"
     12 
     13 #import <Metal/Metal.h>
     14 
     15 /**
     16  * Returns the Metal texture format for the given GrPixelConfig
     17  */
     18 bool GrPixelConfigToMTLFormat(GrPixelConfig config, MTLPixelFormat* format);
     19 
     20 /**
     21 * Returns the GrPixelConfig for the given Metal texture format
     22 */
     23 GrPixelConfig GrMTLFormatToPixelConfig(MTLPixelFormat format);
     24 
     25 /**
     26  * Returns true if the given vulkan texture format is sRGB encoded.
     27  * Also provides the non-sRGB version, if there is one.
     28  */
     29 bool GrMTLFormatIsSRGB(MTLPixelFormat format, MTLPixelFormat* linearFormat);
     30 
     31 #endif
     32