redo gryphn output devices

This commit is contained in:
Gregory Wells
2025-08-03 10:17:17 -04:00
parent 0647207f9e
commit 74dc644cb6
7 changed files with 35 additions and 33 deletions

View File

@@ -4,7 +4,7 @@
#include "instance/metal_instance.h"
#include "instance/gryphn_instance.h"
gnReturnCode createMetalOutputDevice(gnOutputDeviceHandle outputDevice, gnInstanceHandle instance, gnOutputDeviceInfo deviceInfo) {
gnReturnCode createMetalOutputDevice(gnInstanceHandle instance, gnOutputDeviceHandle outputDevice, gnOutputDeviceInfo deviceInfo) {
outputDevice->outputDevice = malloc(sizeof(gnPlatformOutputDevice));
outputDevice->outputDevice->device = deviceInfo.physicalDevice->physicalDevice->device.retain;
outputDevice->outputDevice->transferQueue = outputDevice->outputDevice->device.newCommandQueue;
@@ -15,7 +15,7 @@ void waitForMetalDevice(gnOutputDeviceHandle device) {
[device->outputDevice->executingCommandBuffer waitUntilCompleted];
}
void destroyMetalOutputDevice(gnOutputDeviceHandle device) {
void destroyMetalOutputDevice(gnInstanceHandle instance, gnOutputDeviceHandle device) {
// for (int i = 0; i < device->outputDevice->queueCount; i++) {
// [device->outputDevice->queues[i] release];
// }

View File

@@ -19,6 +19,6 @@ struct gnPlatformOutputDevice_t {
gnPhysicalDevice* getMetalDevices(gnInstanceHandle instance, uint32_t* deviceCount);
gnBool metalCanDevicePresent(gnPhysicalDevice device, gnWindowSurface windowSurface);
gnReturnCode createMetalOutputDevice(gnOutputDeviceHandle outputDevice, gnInstanceHandle instance, gnOutputDeviceInfo deviceInfo);
gnReturnCode createMetalOutputDevice(gnInstanceHandle instance, gnOutputDeviceHandle outputDevice, gnOutputDeviceInfo deviceInfo);
void waitForMetalDevice(gnOutputDeviceHandle device);
void destroyMetalOutputDevice(gnOutputDeviceHandle device);
void destroyMetalOutputDevice(gnInstanceHandle instance, gnOutputDeviceHandle device);