• Home
Name Date Size #Lines LOC

..--

cl/03-May-2024-3,2312,555

d3d/03-May-2024-97,09974,284

gl/03-May-2024-55,46545,174

metal/03-May-2024-50,71041,964

null/03-May-2024-3,3582,405

vulkan/03-May-2024-118,61895,372

BufferImpl.cppD03-May-20241.1 KiB3522

BufferImpl.hD03-May-20243.9 KiB9771

BufferImpl_mock.hD03-May-20242 KiB6245

CLCommandQueueImpl.cppD03-May-2024512 208

CLCommandQueueImpl.hD03-May-202411.1 KiB219177

CLContextImpl.cppD03-May-2024453 186

CLContextImpl.hD03-May-20243.9 KiB9062

CLDeviceImpl.cppD03-May-2024742 3012

CLDeviceImpl.hD03-May-20243.2 KiB8965

CLEventImpl.cppD03-May-2024431 186

CLEventImpl.hD03-May-20241.2 KiB4324

CLExtensions.cppD03-May-20241.8 KiB5333

CLExtensions.hD03-May-20242.2 KiB6034

CLKernelImpl.cppD03-May-20241.1 KiB4218

CLKernelImpl.hD03-May-20242.5 KiB9765

CLMemoryImpl.cppD03-May-2024442 186

CLMemoryImpl.hD03-May-2024995 3821

CLPlatformImpl.cppD03-May-2024670 2610

CLPlatformImpl.hD03-May-20242 KiB6944

CLProgramImpl.cppD03-May-2024453 186

CLProgramImpl.hD03-May-20242 KiB6240

CLSamplerImpl.cppD03-May-2024453 186

CLSamplerImpl.hD03-May-2024682 3116

CLtypes.hD03-May-2024697 3318

CompilerImpl.hD03-May-2024817 3316

ContextImpl.cppD03-May-20242.3 KiB8965

ContextImpl.hD03-May-202414.5 KiB274209

DeviceImpl.cppD03-May-2024372 196

DeviceImpl.hD03-May-20241 KiB4326

DisplayImpl.cppD03-May-20243.8 KiB152121

DisplayImpl.hD03-May-20245.1 KiB154113

EGLImplFactory.hD03-May-20243.4 KiB10377

EGLReusableSync.cppD03-May-20243.1 KiB11792

EGLReusableSync.hD03-May-20241.6 KiB5536

EGLSyncImpl.cppD03-May-2024675 3116

EGLSyncImpl.hD03-May-20241.6 KiB5638

FenceNVImpl.hD03-May-2024985 3923

Format.hD03-May-20247.9 KiB239181

FormatID_autogen.hD03-May-20245.8 KiB255239

Format_table_autogen.cppD03-May-202486.3 KiB733713

FramebufferAttachmentObjectImpl.hD03-May-20241.9 KiB6443

FramebufferImpl.hD03-May-20245 KiB12291

FramebufferImpl_mock.hD03-May-20243.1 KiB8354

GLImplFactory.hD03-May-20243.2 KiB11770

ImageImpl.cppD03-May-2024621 3117

ImageImpl.hD03-May-20241.9 KiB6948

ImageImpl_mock.hD03-May-2024830 3017

MemoryObjectImpl.hD03-May-20241.4 KiB4831

OverlayImpl.hD03-May-2024905 4326

ProgramImpl.hD03-May-20247.5 KiB175132

ProgramImpl_mock.hD03-May-20244 KiB8861

ProgramPipelineImpl.cppD03-May-2024632 2210

ProgramPipelineImpl.hD03-May-20241.2 KiB4123

QueryImpl.cppD03-May-2024375 175

QueryImpl.hD03-May-20241.5 KiB4831

README.mdD03-May-20241.7 KiB3827

RenderTargetCache.hD03-May-20246.9 KiB187144

RenderbufferImpl.hD03-May-20247 KiB163134

RenderbufferImpl_mock.hD03-May-20241.6 KiB5234

SamplerImpl.hD03-May-2024960 4326

SemaphoreImpl.hD03-May-20241.5 KiB5132

ShaderImpl.cppD03-May-20242.6 KiB10172

ShaderImpl.hD03-May-20242.1 KiB7647

ShaderInterfaceVariableInfoMap.cppD03-May-20246.6 KiB168138

ShaderInterfaceVariableInfoMap.hD03-May-20247.1 KiB166135

StreamProducerImpl.hD03-May-20241.6 KiB4118

SurfaceImpl.cppD03-May-20243.7 KiB154120

SurfaceImpl.hD03-May-20245.5 KiB13395

SyncImpl.hD03-May-20241.3 KiB4629

TextureImpl.cppD03-May-20247.3 KiB196166

TextureImpl.hD03-May-202412.3 KiB253207

TextureImpl_mock.hD03-May-20246 KiB148128

TransformFeedbackImpl.hD03-May-20241.4 KiB4125

TransformFeedbackImpl_mock.hD03-May-20241.3 KiB4225

VertexArrayImpl.hD03-May-20242.5 KiB6945

angle_format.pyD03-May-202410.2 KiB298223

angle_format_data.jsonD03-May-20246.3 KiB299298

angle_format_map.jsonD03-May-202412.3 KiB233232

copyvertex.hD03-May-20243.1 KiB8154

copyvertex.inc.hD03-May-202422.7 KiB636530

d3d_format.cppD03-May-20246 KiB207186

d3d_format.hD03-May-20241.4 KiB5939

driver_utils.cppD03-May-20248.8 KiB322257

driver_utils.hD03-May-20245.6 KiB261202

driver_utils_ios.mmD03-May-2024761 2920

driver_utils_mac.mmD03-May-2024803 3022

dxgi_format_data.jsonD03-May-20243 KiB119118

dxgi_format_map.hD03-May-2024647 2815

dxgi_format_map_autogen.cppD03-May-202418 KiB517495

dxgi_support_data.jsonD03-May-202432.4 KiB1,2801,279

dxgi_support_table.hD03-May-20241.2 KiB4423

dxgi_support_table_autogen.cppD03-May-2024109.5 KiB3,0433,000

gen_angle_format_table.pyD03-May-202413.9 KiB451330

gen_dxgi_format_table.pyD03-May-20243.8 KiB160111

gen_dxgi_support_tables.pyD03-May-202411.5 KiB343274

gen_load_functions_table.pyD03-May-20247.4 KiB230165

glslang_wrapper_utils.cppD03-May-2024197.4 KiB4,9863,569

glslang_wrapper_utils.hD03-May-20247.6 KiB178118

load_functions_data.jsonD03-May-202429.7 KiB1,2081,207

load_functions_table.hD03-May-2024601 218

load_functions_table_autogen.cppD03-May-2024134.8 KiB4,6764,388

renderer_utils.cppD03-May-202460.1 KiB1,5501,297

renderer_utils.hD03-May-202419.3 KiB489394

serial_utils.hD03-May-20243.2 KiB10876

serial_utils_unittest.cppD03-May-2024568 3115

README.md

1# ANGLE back-ends
2
3This folder contains shared back-end-specific implementation files. The classes
4and types in `renderer` are not specified by GLES. They instead are common to
5all the various ANGLE implementations.
6
7See [`renderer_utils.h`](renderer_utils.h) for various cross back-end utilties.
8
9## ANGLE Formats
10
11The ANGLE format class, [`angle::Format`][ANGLEFormatDef], works as a union
12between GLES and all the various back-end formats. It can represent any type
13of format in ANGLE. e.g. Formats in Vulkan that don't exist in GLES, or DXGI
14formats that don't exist in GLES, or Windows/Android surface configs that
15don't exist anywhere else.
16
17The `glInternalFormat` member of `angle::Format` represents the "closest" GL
18format for an ANGLE format. For formats that don't exist in GLES this will
19not be exactly what the format represents.
20
21The back-ends also define their own format tables. See the
22[Vulkan Format table docs][VulkanFormatDocs] and the
23[D3D11 format table docs][D23D11FormatDocs].
24
25## DXGI Format Info
26
27DXGI formats are used in both the GL and D3D11 back-end. Therefore the
28generated info table lives in this common shared location.
29
30The DXGI info table is generated by [`gen_dxgi_format_table.py`](gen_dxgi_format_table.py)
31and sources data from [`dxgi_format_data.json`](dxgi_format_data.json). The
32main purpose of the table is to convert from a DXGI format to an ANGLE
33format, where the ANGLE format should have all the necessary information.
34
35[ANGLEFormatDef]: https://chromium.googlesource.com/angle/angle/+/f85ec039a7dcfde3b4a8d9ddfa8baa84ae5ce927/src/libANGLE/renderer/Format.h#24
36[VulkanFormatDocs]: vulkan/doc/FormatTablesAndEmulation.md
37[D3D11FormatDocs]: d3d/d3d11/FormatTables.md
38