Flutter Engine
The Flutter Engine
Classes | Macros | Typedefs | Enumerations | Variables
GrGLTypes.h File Reference
#include "include/core/SkRefCnt.h"
#include "include/gpu/GpuTypes.h"
#include "include/gpu/gl/GrGLConfig.h"

Go to the source code of this file.

Classes

struct  GrGLDrawArraysIndirectCommand
 
struct  GrGLDrawElementsIndirectCommand
 
struct  GrGLTextureInfo
 
struct  GrGLFramebufferInfo
 
struct  GrGLSurfaceInfo
 

Macros

#define GR_IS_GR_GL(standard)   (kGL_GrGLStandard == standard)
 
#define GR_IS_GR_GL_ES(standard)   (kGLES_GrGLStandard == standard)
 
#define GR_IS_GR_WEBGL(standard)   (kWebGL_GrGLStandard == standard)
 

Typedefs

typedef unsigned int GrGLenum
 
typedef unsigned char GrGLboolean
 
typedef unsigned int GrGLbitfield
 
typedef signed char GrGLbyte
 
typedef char GrGLchar
 
typedef short GrGLshort
 
typedef int GrGLint
 
typedef int GrGLsizei
 
typedef int64_t GrGLint64
 
typedef unsigned char GrGLubyte
 
typedef unsigned short GrGLushort
 
typedef unsigned int GrGLuint
 
typedef uint64_t GrGLuint64
 
typedef unsigned short int GrGLhalf
 
typedef float GrGLfloat
 
typedef float GrGLclampf
 
typedef double GrGLdouble
 
typedef double GrGLclampd
 
typedef void GrGLvoid
 
typedef signed long int GrGLintptr
 
typedef signed long int GrGLsizeiptr
 
typedef void * GrGLeglImage
 
typedef struct __GLsync * GrGLsync
 
typedef void(GR_GL_FUNCTION_TYPEGRGLDEBUGPROC) (GrGLenum source, GrGLenum type, GrGLuint id, GrGLenum severity, GrGLsizei length, const GrGLchar *message, const void *userParam)
 
typedef void * GrEGLImage
 
typedef void * GrEGLDisplay
 
typedef void * GrEGLContext
 
typedef void * GrEGLClientBuffer
 
typedef unsigned int GrEGLenum
 
typedef int32_t GrEGLint
 
typedef unsigned int GrEGLBoolean
 

Enumerations

enum  GrGLStandard { kNone_GrGLStandard , kGL_GrGLStandard , kGLES_GrGLStandard , kWebGL_GrGLStandard }
 
enum class  GrGLFormat {
  kUnknown , kRGBA8 , kR8 , kALPHA8 ,
  kLUMINANCE8 , kLUMINANCE8_ALPHA8 , kBGRA8 , kRGB565 ,
  kRGBA16F , kR16F , kRGB8 , kRGBX8 ,
  kRG8 , kRGB10_A2 , kRGBA4 , kSRGB8_ALPHA8 ,
  kCOMPRESSED_ETC1_RGB8 , kCOMPRESSED_RGB8_ETC2 , kCOMPRESSED_RGB8_BC1 , kCOMPRESSED_RGBA8_BC1 ,
  kR16 , kRG16 , kRGBA16 , kRG16F ,
  kLUMINANCE16F , kLastColorFormat = kLUMINANCE16F , kSTENCIL_INDEX8 , kSTENCIL_INDEX16 ,
  kDEPTH24_STENCIL8 , kLast = kDEPTH24_STENCIL8
}
 

Variables

static const int kGrGLStandardCnt = 4
 

Macro Definition Documentation

◆ GR_IS_GR_GL

#define GR_IS_GR_GL (   standard)    (kGL_GrGLStandard == standard)

Definition at line 48 of file GrGLTypes.h.

◆ GR_IS_GR_GL_ES

#define GR_IS_GR_GL_ES (   standard)    (kGLES_GrGLStandard == standard)

Definition at line 49 of file GrGLTypes.h.

◆ GR_IS_GR_WEBGL

#define GR_IS_GR_WEBGL (   standard)    (kWebGL_GrGLStandard == standard)

Definition at line 50 of file GrGLTypes.h.

Typedef Documentation

◆ GrEGLBoolean

typedef unsigned int GrEGLBoolean

Definition at line 171 of file GrGLTypes.h.

◆ GrEGLClientBuffer

typedef void* GrEGLClientBuffer

Definition at line 168 of file GrGLTypes.h.

◆ GrEGLContext

typedef void* GrEGLContext

Definition at line 167 of file GrGLTypes.h.

◆ GrEGLDisplay

typedef void* GrEGLDisplay

Definition at line 166 of file GrGLTypes.h.

◆ GrEGLenum

typedef unsigned int GrEGLenum

Definition at line 169 of file GrGLTypes.h.

◆ GrEGLImage

typedef void* GrEGLImage

EGL types.

Definition at line 165 of file GrGLTypes.h.

◆ GrEGLint

typedef int32_t GrEGLint

Definition at line 170 of file GrGLTypes.h.

◆ GrGLbitfield

typedef unsigned int GrGLbitfield

Definition at line 104 of file GrGLTypes.h.

◆ GrGLboolean

typedef unsigned char GrGLboolean

Definition at line 103 of file GrGLTypes.h.

◆ GrGLbyte

typedef signed char GrGLbyte

Definition at line 105 of file GrGLTypes.h.

◆ GrGLchar

typedef char GrGLchar

Definition at line 106 of file GrGLTypes.h.

◆ GrGLclampd

typedef double GrGLclampd

Definition at line 119 of file GrGLTypes.h.

◆ GrGLclampf

typedef float GrGLclampf

Definition at line 117 of file GrGLTypes.h.

◆ GRGLDEBUGPROC

typedef void(GR_GL_FUNCTION_TYPE * GRGLDEBUGPROC) (GrGLenum source, GrGLenum type, GrGLuint id, GrGLenum severity, GrGLsizei length, const GrGLchar *message, const void *userParam)

KHR_debug

Definition at line 154 of file GrGLTypes.h.

◆ GrGLdouble

typedef double GrGLdouble

Definition at line 118 of file GrGLTypes.h.

◆ GrGLeglImage

typedef void* GrGLeglImage

Definition at line 128 of file GrGLTypes.h.

◆ GrGLenum

typedef unsigned int GrGLenum

Declares typedefs for all the GL functions used in GrGLInterface

Definition at line 102 of file GrGLTypes.h.

◆ GrGLfloat

typedef float GrGLfloat

Definition at line 116 of file GrGLTypes.h.

◆ GrGLhalf

typedef unsigned short int GrGLhalf

Definition at line 115 of file GrGLTypes.h.

◆ GrGLint

typedef int GrGLint

Definition at line 108 of file GrGLTypes.h.

◆ GrGLint64

typedef int64_t GrGLint64

Definition at line 110 of file GrGLTypes.h.

◆ GrGLintptr

typedef signed long int GrGLintptr

Definition at line 125 of file GrGLTypes.h.

◆ GrGLshort

typedef short GrGLshort

Definition at line 107 of file GrGLTypes.h.

◆ GrGLsizei

typedef int GrGLsizei

Definition at line 109 of file GrGLTypes.h.

◆ GrGLsizeiptr

typedef signed long int GrGLsizeiptr

Definition at line 126 of file GrGLTypes.h.

◆ GrGLsync

typedef struct __GLsync* GrGLsync

Definition at line 129 of file GrGLTypes.h.

◆ GrGLubyte

typedef unsigned char GrGLubyte

Definition at line 111 of file GrGLTypes.h.

◆ GrGLuint

typedef unsigned int GrGLuint

Definition at line 113 of file GrGLTypes.h.

◆ GrGLuint64

typedef uint64_t GrGLuint64

Definition at line 114 of file GrGLTypes.h.

◆ GrGLushort

typedef unsigned short GrGLushort

Definition at line 112 of file GrGLTypes.h.

◆ GrGLvoid

typedef void GrGLvoid

Definition at line 120 of file GrGLTypes.h.

Enumeration Type Documentation

◆ GrGLFormat

enum class GrGLFormat
strong

The supported GL formats represented as an enum. Actual support by GrContext depends on GL context version and extensions.

Enumerator
kUnknown 
kRGBA8 
kR8 
kALPHA8 
kLUMINANCE8 
kLUMINANCE8_ALPHA8 
kBGRA8 
kRGB565 
kRGBA16F 
kR16F 
kRGB8 
kRGBX8 
kRG8 
kRGB10_A2 
kRGBA4 
kSRGB8_ALPHA8 
kCOMPRESSED_ETC1_RGB8 
kCOMPRESSED_RGB8_ETC2 
kCOMPRESSED_RGB8_BC1 
kCOMPRESSED_RGBA8_BC1 
kR16 
kRG16 
kRGBA16 
kRG16F 
kLUMINANCE16F 
kLastColorFormat 
kSTENCIL_INDEX8 
kSTENCIL_INDEX16 
kDEPTH24_STENCIL8 
kLast 

Definition at line 59 of file GrGLTypes.h.

59 {
61
62 kRGBA8,
63 kR8,
64 kALPHA8,
67 kBGRA8,
68 kRGB565,
70 kR16F,
71 kRGB8,
72 kRGBX8,
73 kRG8,
75 kRGBA4,
81 kR16,
82 kRG16,
83 kRGBA16,
84 kRG16F,
86
88
89 // Depth/Stencil formats
93
95};
@ kCOMPRESSED_ETC1_RGB8
@ kCOMPRESSED_RGB8_BC1
@ kCOMPRESSED_RGB8_ETC2
@ kCOMPRESSED_RGBA8_BC1
@ kLUMINANCE8_ALPHA8

◆ GrGLStandard

Classifies GL contexts by which standard they implement (currently as OpenGL vs. OpenGL ES).

Enumerator
kNone_GrGLStandard 
kGL_GrGLStandard 
kGLES_GrGLStandard 
kWebGL_GrGLStandard 

Definition at line 19 of file GrGLTypes.h.

19 {
24};
@ kNone_GrGLStandard
Definition: GrGLTypes.h:20
@ kGLES_GrGLStandard
Definition: GrGLTypes.h:22
@ kWebGL_GrGLStandard
Definition: GrGLTypes.h:23
@ kGL_GrGLStandard
Definition: GrGLTypes.h:21

Variable Documentation

◆ kGrGLStandardCnt

const int kGrGLStandardCnt = 4
static

Definition at line 25 of file GrGLTypes.h.