Halide 19.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
vulkan_interface.h File Reference
#include "runtime_internal.h"
#include <vulkan/vulkan.h>
#include "vulkan_functions.h"

Go to the source code of this file.

Namespaces

namespace  Halide
 This file defines the class FunctionDAG, which is our representation of a Halide pipeline, and contains methods to using Halide's bounds tools to query properties of it.
 
namespace  Halide::Runtime
 
namespace  Halide::Runtime::Internal
 
namespace  Halide::Runtime::Internal::Vulkan
 

Macros

#define HL_VK_ENV_DELIM   ":"
 
#define VK_NO_PROTOTYPES
 
#define VULKAN_FN(fn)
 
#define HL_USE_VULKAN_LOADER_FNS
 
#define HL_USE_VULKAN_INSTANCE_FNS
 
#define HL_USE_VULKAN_DEVICE_FNS
 
#define VULKAN_FN(fn)
 
#define HL_USE_VULKAN_LOADER_FNS
 
#define VULKAN_FN(fn)
 
#define HL_USE_VULKAN_INSTANCE_FNS
 
#define VULKAN_FN(fn)
 
#define HL_USE_VULKAN_INSTANCE_FNS
 
#define VULKAN_FN(fn)
 
#define HL_USE_VULKAN_DEVICE_FNS
 
#define VULKAN_FN(fn)
 
#define HL_USE_VULKAN_DEVICE_FNS
 

Functions

WEAK void * Halide::Runtime::Internal::Vulkan::halide_vulkan_get_symbol (void *user_context, const char *name)
 
void WEAK Halide::Runtime::Internal::Vulkan::vk_load_vulkan_loader_functions (void *user_context)
 
void WEAK Halide::Runtime::Internal::Vulkan::vk_load_vulkan_instance_functions (void *user_context, VkInstance instance)
 
void WEAK Halide::Runtime::Internal::Vulkan::vk_unload_vulkan_instance_functions (void *user_context)
 
void WEAK Halide::Runtime::Internal::Vulkan::vk_load_vulkan_device_functions (void *user_context, VkDevice device)
 
void WEAK Halide::Runtime::Internal::Vulkan::vk_unload_vulkan_device_functions (void *user_context)
 

Variables

WEAK halide_device_interface_t Halide::Runtime::Internal::Vulkan::vulkan_device_interface
 
WEAK void * Halide::Runtime::Internal::Vulkan::lib_vulkan = nullptr
 

Macro Definition Documentation

◆ HL_VK_ENV_DELIM

#define HL_VK_ENV_DELIM   ":"

Definition at line 14 of file vulkan_interface.h.

◆ VK_NO_PROTOTYPES

#define VK_NO_PROTOTYPES

Definition at line 18 of file vulkan_interface.h.

◆ VULKAN_FN [1/6]

#define VULKAN_FN ( fn)
Value:
WEAK PFN_##fn fn = nullptr;
#define WEAK

Definition at line 73 of file vulkan_interface.h.

◆ HL_USE_VULKAN_LOADER_FNS [1/2]

#define HL_USE_VULKAN_LOADER_FNS

Definition at line 74 of file vulkan_interface.h.

◆ HL_USE_VULKAN_INSTANCE_FNS [1/3]

#define HL_USE_VULKAN_INSTANCE_FNS

Definition at line 75 of file vulkan_interface.h.

◆ HL_USE_VULKAN_DEVICE_FNS [1/3]

#define HL_USE_VULKAN_DEVICE_FNS

Definition at line 76 of file vulkan_interface.h.

◆ VULKAN_FN [2/6]

#define VULKAN_FN ( fn)
Value:
fn = (PFN_##fn)halide_vulkan_get_symbol(user_context, #fn);
void * user_context

Definition at line 73 of file vulkan_interface.h.

◆ HL_USE_VULKAN_LOADER_FNS [2/2]

#define HL_USE_VULKAN_LOADER_FNS

Definition at line 74 of file vulkan_interface.h.

◆ VULKAN_FN [3/6]

#define VULKAN_FN ( fn)
Value:
fn = (PFN_##fn)vkGetInstanceProcAddr(instance, #fn);

Definition at line 73 of file vulkan_interface.h.

◆ HL_USE_VULKAN_INSTANCE_FNS [2/3]

#define HL_USE_VULKAN_INSTANCE_FNS

Definition at line 75 of file vulkan_interface.h.

◆ VULKAN_FN [4/6]

#define VULKAN_FN ( fn)
Value:
fn = (PFN_##fn)(nullptr);

Definition at line 73 of file vulkan_interface.h.

◆ HL_USE_VULKAN_INSTANCE_FNS [3/3]

#define HL_USE_VULKAN_INSTANCE_FNS

Definition at line 75 of file vulkan_interface.h.

◆ VULKAN_FN [5/6]

#define VULKAN_FN ( fn)
Value:
fn = (PFN_##fn)vkGetDeviceProcAddr(device, #fn);

Definition at line 73 of file vulkan_interface.h.

◆ HL_USE_VULKAN_DEVICE_FNS [2/3]

#define HL_USE_VULKAN_DEVICE_FNS

Definition at line 76 of file vulkan_interface.h.

◆ VULKAN_FN [6/6]

#define VULKAN_FN ( fn)
Value:
fn = (PFN_##fn)(nullptr);

Definition at line 73 of file vulkan_interface.h.

◆ HL_USE_VULKAN_DEVICE_FNS [3/3]

#define HL_USE_VULKAN_DEVICE_FNS

Definition at line 76 of file vulkan_interface.h.