Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Functions
GrBackendFormats Namespace Reference

Functions

SK_API GrBackendFormat MakeGL (GrGLenum format, GrGLenum target)
 
SK_API GrGLFormat AsGLFormat (const GrBackendFormat &)
 
SK_API GrGLenum AsGLFormatEnum (const GrBackendFormat &)
 
SK_API GrBackendFormat MakeMtl (GrMTLPixelFormat format)
 
SK_API GrMTLPixelFormat AsMtlFormat (const GrBackendFormat &)
 
SK_API GrBackendFormat MakeVk (VkFormat format, bool willUseDRMFormatModifiers=false)
 
SK_API GrBackendFormat MakeVk (const GrVkYcbcrConversionInfo &ycbcrInfo, bool willUseDRMFormatModifiers=false)
 
SK_API bool AsVkFormat (const GrBackendFormat &, VkFormat *)
 
SK_API const GrVkYcbcrConversionInfoGetVkYcbcrConversionInfo (const GrBackendFormat &)
 

Function Documentation

◆ AsGLFormat()

GrGLFormat GrBackendFormats::AsGLFormat ( const GrBackendFormat format)

Definition at line 118 of file GrGLBackendSurface.cpp.

118 {
119 if (format.isValid() && format.backend() == GrBackendApi::kOpenGL) {
121 SkASSERT(data);
122 return GrGLFormatFromGLEnum(data->asEnum());
123 }
125}
static const GrGLBackendFormatData * get_and_cast_data(const GrBackendFormat &format)
static constexpr GrGLFormat GrGLFormatFromGLEnum(GrGLenum glFormat)
Definition GrGLUtil.h:409
#define SkASSERT(cond)
Definition SkAssert.h:116
uint32_t uint32_t * format

◆ AsGLFormatEnum()

GrGLenum GrBackendFormats::AsGLFormatEnum ( const GrBackendFormat format)

Definition at line 127 of file GrGLBackendSurface.cpp.

127 {
128 if (format.isValid() && format.backend() == GrBackendApi::kOpenGL) {
130 SkASSERT(data);
131 return data->asEnum();
132 }
133 return 0;
134}

◆ AsMtlFormat()

GrMTLPixelFormat GrBackendFormats::AsMtlFormat ( const GrBackendFormat format)

Definition at line 80 of file GrMtlBackendSurface.mm.

80 {
81 if (format.isValid() && format.backend() == GrBackendApi::kMetal) {
83 SkASSERT(data);
84 return data->asMtlFormat();
85 }
86 // MTLPixelFormatInvalid == 0
87 return GrMTLPixelFormat(0);
88}
static const GrMtlBackendFormatData * get_and_cast_data(const GrBackendFormat &format)
unsigned int GrMTLPixelFormat
Definition GrMtlTypes.h:17

◆ AsVkFormat()

bool GrBackendFormats::AsVkFormat ( const GrBackendFormat format,
VkFormat vkFormat 
)

Definition at line 134 of file GrVkBackendSurface.cpp.

134 {
135 SkASSERT(vkFormat);
136 if (format.isValid() && format.backend() == GrBackendApi::kVulkan) {
138 SkASSERT(data);
139 *vkFormat = data->asVkFormat();
140 return true;
141 }
142 return false;
143}
static const GrVkBackendFormatData * get_and_cast_data(const GrBackendFormat &format)

◆ GetVkYcbcrConversionInfo()

const GrVkYcbcrConversionInfo * GrBackendFormats::GetVkYcbcrConversionInfo ( const GrBackendFormat format)

Definition at line 145 of file GrVkBackendSurface.cpp.

145 {
146 if (format.isValid() && format.backend() == GrBackendApi::kVulkan) {
148 SkASSERT(data);
149 return data->getYcbcrConversionInfo();
150 }
151 return nullptr;
152}

◆ MakeGL()

GrBackendFormat GrBackendFormats::MakeGL ( GrGLenum  format,
GrGLenum  target 
)

Definition at line 113 of file GrGLBackendSurface.cpp.

113 {
116}
static GrTextureType gl_target_to_gr_target(GrGLenum target)
static GrBackendFormat MakeGrBackendFormat(GrTextureType textureType, GrBackendApi api, const FormatData &data)
uint32_t * target

◆ MakeMtl()

GrBackendFormat GrBackendFormats::MakeMtl ( GrMTLPixelFormat  format)

◆ MakeVk() [1/2]

GrBackendFormat GrBackendFormats::MakeVk ( const GrVkYcbcrConversionInfo ycbcrInfo,
bool  willUseDRMFormatModifiers = false 
)

Definition at line 122 of file GrVkBackendSurface.cpp.

122 {
123 SkASSERT(ycbcrInfo.isValid());
124 GrTextureType textureType =
125 ((ycbcrInfo.isValid() && ycbcrInfo.fExternalFormat) || willUseDRMFormatModifiers)
129 textureType,
131 GrVkBackendFormatData(ycbcrInfo.fFormat, ycbcrInfo));
132}
GrTextureType

◆ MakeVk() [2/2]

GrBackendFormat GrBackendFormats::MakeVk ( VkFormat  format,
bool  willUseDRMFormatModifiers = false 
)