19 lines
710 B
Zig
19 lines
710 B
Zig
const std = @import("std");
|
|
const vk = @import("vulkan");
|
|
const common = @import("common");
|
|
|
|
const Instance = @import("Instance.zig");
|
|
|
|
const global_pfn_map = std.StaticStringMap(vk.PfnVoidFunction).initComptime(.{
|
|
.{ "vkGetInstanceProcAddr", @as(vk.PfnVoidFunction, @ptrCast(&common.icd.getInstanceProcAddr)) },
|
|
.{ "vkCreateInstance", @as(vk.PfnVoidFunction, @ptrCast(&Instance.create)) },
|
|
});
|
|
|
|
pub export fn vkGetInstanceProcAddr(p_instance: vk.Instance, pName: ?[*:0]const u8) callconv(vk.vulkan_call_conv) vk.PfnVoidFunction {
|
|
if (pName == null) {
|
|
return null;
|
|
}
|
|
const name = std.mem.span(pName.?);
|
|
return common.icd.getInstanceProcAddr(global_pfn_map, p_instance, name);
|
|
}
|