Blender V4.5
GPU_platform.hh File Reference
#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  eGPUDeviceType {
  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  eGPUOSType { GPU_OS_WIN = (1 << 8) , GPU_OS_MAC = (1 << 9) , GPU_OS_UNIX = (1 << 10) , GPU_OS_ANY = (0xff00) }
 
enum  eGPUDriverType { GPU_DRIVER_OFFICIAL = (1 << 16) , GPU_DRIVER_OPENSOURCE = (1 << 17) , GPU_DRIVER_SOFTWARE = (1 << 18) , GPU_DRIVER_ANY = (0xff0000) }
 
enum  eGPUSupportLevel { 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 (eGPUDeviceType device, eGPUOSType os, eGPUDriverType driver)
 
bool GPU_type_matches_ex (eGPUDeviceType device, eGPUOSType os, eGPUDriverType driver, eGPUBackendType backend)
 
eGPUSupportLevel 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< GPUDeviceGPU_platform_devices_list ()
 
blender::Span< uint8_tGPU_platform_uuid ()
 
blender::Span< uint8_tGPU_platform_luid ()
 
uint32_t GPU_platform_luid_node_mask ()
 

Enumeration Type Documentation

◆ eGPUDeviceType

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.

◆ eGPUDriverType

Enumerator
GPU_DRIVER_OFFICIAL 
GPU_DRIVER_OPENSOURCE 
GPU_DRIVER_SOFTWARE 
GPU_DRIVER_ANY 

Definition at line 44 of file GPU_platform.hh.

◆ eGPUOSType

enum eGPUOSType
Enumerator
GPU_OS_WIN 
GPU_OS_MAC 
GPU_OS_UNIX 
GPU_OS_ANY 

Definition at line 37 of file GPU_platform.hh.

◆ eGPUSupportLevel

Enumerator
GPU_SUPPORT_LEVEL_SUPPORTED 
GPU_SUPPORT_LEVEL_LIMITED 
GPU_SUPPORT_LEVEL_UNSUPPORTED 

Definition at line 51 of file GPU_platform.hh.

◆ GPUArchitectureType

Enumerator
GPU_ARCHITECTURE_IMR 
GPU_ARCHITECTURE_TBDR 

Definition at line 57 of file GPU_platform.hh.

Function Documentation

◆ GPU_platform_architecture()

◆ GPU_platform_devices_list()

◆ GPU_platform_gpu_name()

◆ GPU_platform_luid()

◆ GPU_platform_luid_node_mask()

uint32_t GPU_platform_luid_node_mask ( )

◆ GPU_platform_renderer()

const char * GPU_platform_renderer ( )

◆ GPU_platform_support_level()

◆ GPU_platform_support_level_key()

const char * GPU_platform_support_level_key ( )

◆ GPU_platform_uuid()

◆ GPU_platform_vendor()

const char * GPU_platform_vendor ( )

◆ GPU_platform_version()

const char * GPU_platform_version ( )

◆ GPU_type_matches()

◆ GPU_type_matches_ex()