|
Blender V5.0
|
#include <cstdint>#include <optional>#include <string>#include "BLI_span.hh"#include "BLI_utildefines.h"#include "GPU_platform_backend_enum.h"Go to the source code of this file.
Classes | |
| class | GPUDevice |
Enumerations | |
| enum | GPUDeviceType { GPU_DEVICE_NVIDIA = (1 << 0) , GPU_DEVICE_ATI = (1 << 1) , GPU_DEVICE_INTEL = (1 << 2) , GPU_DEVICE_INTEL_UHD = (1 << 3) , GPU_DEVICE_APPLE = (1 << 4) , GPU_DEVICE_SOFTWARE = (1 << 5) , GPU_DEVICE_QUALCOMM = (1 << 6) , GPU_DEVICE_UNKNOWN = (1 << 7) , GPU_DEVICE_ANY = (0xff) } |
| enum | GPUOSType { GPU_OS_WIN = (1 << 8) , GPU_OS_MAC = (1 << 9) , GPU_OS_UNIX = (1 << 10) , GPU_OS_ANY = (0xff00) } |
| enum | GPUDriverType { GPU_DRIVER_OFFICIAL = (1 << 16) , GPU_DRIVER_OPENSOURCE = (1 << 17) , GPU_DRIVER_SOFTWARE = (1 << 18) , GPU_DRIVER_ANY = (0xff0000) } |
| enum | GPUSupportLevel { GPU_SUPPORT_LEVEL_SUPPORTED , GPU_SUPPORT_LEVEL_LIMITED , GPU_SUPPORT_LEVEL_UNSUPPORTED } |
| enum | GPUArchitectureType { GPU_ARCHITECTURE_IMR = 0 , GPU_ARCHITECTURE_TBDR = 1 } |
Functions | |
| bool | GPU_type_matches (GPUDeviceType device, GPUOSType os, GPUDriverType driver) |
| bool | GPU_type_matches_ex (GPUDeviceType device, GPUOSType os, GPUDriverType driver, GPUBackendType backend) |
| GPUSupportLevel | GPU_platform_support_level () |
| const char * | GPU_platform_vendor () |
| const char * | GPU_platform_renderer () |
| const char * | GPU_platform_version () |
| const char * | GPU_platform_support_level_key () |
| const char * | GPU_platform_gpu_name () |
| GPUArchitectureType | GPU_platform_architecture () |
| blender::Span< GPUDevice > | GPU_platform_devices_list () |
| blender::Span< uint8_t > | GPU_platform_uuid () |
| blender::Span< uint8_t > | GPU_platform_luid () |
| uint32_t | GPU_platform_luid_node_mask () |
| enum GPUArchitectureType |
| Enumerator | |
|---|---|
| GPU_ARCHITECTURE_IMR | |
| GPU_ARCHITECTURE_TBDR | |
Definition at line 57 of file GPU_platform.hh.
| enum GPUDeviceType |
| Enumerator | |
|---|---|
| GPU_DEVICE_NVIDIA | |
| GPU_DEVICE_ATI | |
| GPU_DEVICE_INTEL | |
| GPU_DEVICE_INTEL_UHD | |
| GPU_DEVICE_APPLE | |
| GPU_DEVICE_SOFTWARE | |
| GPU_DEVICE_QUALCOMM | |
| GPU_DEVICE_UNKNOWN | |
| GPU_DEVICE_ANY | |
Definition at line 23 of file GPU_platform.hh.
| enum GPUDriverType |
| Enumerator | |
|---|---|
| GPU_DRIVER_OFFICIAL | |
| GPU_DRIVER_OPENSOURCE | |
| GPU_DRIVER_SOFTWARE | |
| GPU_DRIVER_ANY | |
Definition at line 44 of file GPU_platform.hh.
| enum GPUOSType |
| Enumerator | |
|---|---|
| GPU_OS_WIN | |
| GPU_OS_MAC | |
| GPU_OS_UNIX | |
| GPU_OS_ANY | |
Definition at line 37 of file GPU_platform.hh.
| enum GPUSupportLevel |
| Enumerator | |
|---|---|
| GPU_SUPPORT_LEVEL_SUPPORTED | |
| GPU_SUPPORT_LEVEL_LIMITED | |
| GPU_SUPPORT_LEVEL_UNSUPPORTED | |
Definition at line 51 of file GPU_platform.hh.
| GPUArchitectureType GPU_platform_architecture | ( | ) |
Definition at line 161 of file gpu_platform.cc.
References BLI_assert, and blender::gpu::GPG.
Referenced by blender::eevee::ShadowModule::init(), and blender::gpu::MTLCommandBufferManager::insert_memory_barrier().
| blender::Span< GPUDevice > GPU_platform_devices_list | ( | ) |
Definition at line 182 of file gpu_platform.cc.
References blender::gpu::GPG.
| const char * GPU_platform_gpu_name | ( | ) |
Definition at line 155 of file gpu_platform.cc.
References BLI_assert, and blender::gpu::GPG.
Referenced by WM_platform_support_perform_checks().
| blender::Span< uint8_t > GPU_platform_luid | ( | ) |
Definition at line 192 of file gpu_platform.cc.
References blender::gpu::GPG.
| uint32_t GPU_platform_luid_node_mask | ( | ) |
Definition at line 197 of file gpu_platform.cc.
References blender::gpu::GPG.
| const char * GPU_platform_renderer | ( | ) |
Definition at line 137 of file gpu_platform.cc.
References BLI_assert, and blender::gpu::GPG.
Referenced by pygpu_platform_renderer_get().
| GPUSupportLevel GPU_platform_support_level | ( | ) |
Definition at line 125 of file gpu_platform.cc.
References BLI_assert, and blender::gpu::GPG.
Referenced by WM_platform_support_perform_checks().
| const char * GPU_platform_support_level_key | ( | ) |
Definition at line 149 of file gpu_platform.cc.
References BLI_assert, and blender::gpu::GPG.
Referenced by WM_platform_support_perform_checks().
| blender::Span< uint8_t > GPU_platform_uuid | ( | ) |
Definition at line 187 of file gpu_platform.cc.
References blender::gpu::GPG.
Referenced by BlenderDisplayDriver::graphics_interop_get_device().
| const char * GPU_platform_vendor | ( | ) |
Definition at line 131 of file gpu_platform.cc.
References BLI_assert, and blender::gpu::GPG.
Referenced by pygpu_platform_vendor_get().
| const char * GPU_platform_version | ( | ) |
Definition at line 143 of file gpu_platform.cc.
References BLI_assert, and blender::gpu::GPG.
Referenced by pygpu_platform_version_get().
| bool GPU_type_matches | ( | GPUDeviceType | device, |
| GPUOSType | os, | ||
| GPUDriverType | driver ) |
Definition at line 167 of file gpu_platform.cc.
References GPU_BACKEND_ANY, and GPU_type_matches_ex().
Referenced by blender::eevee::GBuffer::bind(), blender::gpu::VKFrameBuffer::clear(), blender::gpu::compile_ex(), blender::gpu::debug::debug_callback(), blender::gpu::detect_workarounds(), blender::gpu::MTLCommandBufferManager::do_break_submission(), blender::eevee::Instance::draw_viewport(), blender::gpu::GLLogParser::parse_line(), pygpu_platform_device_type_get(), standard_defines(), blender::eevee::IrradianceBake::surfels_lights_eval(), blender::eevee::Film::sync(), blender::gpu::GLShader::vertex_interface_declare(), wm_platform_support_create_link(), WM_platform_support_perform_checks(), and wm_xr_init().
| bool GPU_type_matches_ex | ( | GPUDeviceType | device, |
| GPUOSType | os, | ||
| GPUDriverType | driver, | ||
| GPUBackendType | backend ) |
Definition at line 172 of file gpu_platform.cc.
References BLI_assert, and blender::gpu::GPG.
Referenced by ED_region_header_draw(), ED_screen_draw_edges(), DRWContext::engines_draw_scene(), GPU_indexbuf_init_ex(), GPU_type_matches(), blender::gpu::IndexBuf::init(), blender::eevee::DepthOfField::render(), blender::gpu::tests::test_framebuffer_multi_viewport(), blender::gpu::tests::test_static_shaders(), and BlenderDisplayDriver::update_end().