finish removing the Queue API

This commit is contained in:
Greg Wells
2025-07-15 11:50:09 -04:00
parent 125c45662d
commit 6e2669b084
11 changed files with 56 additions and 64 deletions

View File

@@ -8,55 +8,47 @@ gnPhysicalOutputDeviceHandle* gnGetPhyscialDevices(gnInstanceHandle instance, ui
return devices;
}
gnBool gnQueueCanPresentToSurface(const gnPhysicalDevice device, uint32_t queueIndex, gnWindowSurfaceHandle windowSurface) {
// if (queueIndex >= device.queueProperties.queueCount) {
// gnDebuggerSetErrorMessage(device.instance->debugger,
// (gnMessageData){
// .message = gnCreateString("gnQueueCanPresentToSurface queue index passed in is large then queueProperties.queueCount")
// }
// );
// return gnFalse;
// }
return device->instance->callingLayer->instanceFunctions._gnQueueCanPresentToSurface(device, queueIndex, windowSurface);
gnBool gnPhysicalDeviceCanPresentToSurface(gnPhysicalOutputDeviceHandle device, gnWindowSurfaceHandle windowSurface) {
return device->instance->callingLayer->instanceFunctions._gnPhysicalDeviceCanPresentToSurface(device, windowSurface);
}
gnBool gnHasGraphicsQueue(gnPhysicalDevice device) {
for (int i = 0; i < device->queueProperties.queueCount; i++) {
if ((device->queueProperties.queueProperties[i].queueType & GN_QUEUE_GRAPHICS) == GN_QUEUE_GRAPHICS) {
return gnTrue;
}
}
return gnFalse;
}
gnBool gnHasPresentQueue(gnPhysicalDevice device, gnWindowSurfaceHandle windowSurface) {
for (int i = 0; i < device->queueProperties.queueCount; i++) {
if (gnQueueCanPresentToSurface(device, i, windowSurface)) {
return gnTrue;
}
}
return gnFalse;
}
int gnGetGraphicsQueueIndex(gnPhysicalDevice device) {
for (int i = 0; i < device->queueProperties.queueCount; i++) {
if ((device->queueProperties.queueProperties[i].queueType & GN_QUEUE_GRAPHICS) == GN_QUEUE_GRAPHICS) {
return i;
break;
}
}
return -1;
}
int gnGetPresentQueueIndex(gnPhysicalDevice device, gnWindowSurfaceHandle windowSurface) {
for (int i = 0; i < device->queueProperties.queueCount; i++) {
if (gnQueueCanPresentToSurface(device, i, windowSurface)) {
return i;
break;
}
}
return -1;
}
gnPhysicalDeviceProperties gnGetPhysicalDeviceProperties(gnPhysicalOutputDeviceHandle device) { return device->properties; }
gnPhysicalDeviceFeatures gnGetPhysicalDeviceFeatures(gnPhysicalOutputDeviceHandle device) { return device->features; }
// gnBool gnHasGraphicsQueue(gnPhysicalDevice device) {
// for (int i = 0; i < device->queueProperties.queueCount; i++) {
// if ((device->queueProperties.queueProperties[i].queueType & GN_QUEUE_GRAPHICS) == GN_QUEUE_GRAPHICS) {
// return gnTrue;
// }
// }
// return gnFalse;
// }
// gnBool gnHasPresentQueue(gnPhysicalDevice device, gnWindowSurfaceHandle windowSurface) {
// for (int i = 0; i < device->queueProperties.queueCount; i++) {
// if (gnQueueCanPresentToSurface(device, i, windowSurface)) {
// return gnTrue;
// }
// }
// return gnFalse;
// }
// int gnGetGraphicsQueueIndex(gnPhysicalDevice device) {
// for (int i = 0; i < device->queueProperties.queueCount; i++) {
// if ((device->queueProperties.queueProperties[i].queueType & GN_QUEUE_GRAPHICS) == GN_QUEUE_GRAPHICS) {
// return i;
// break;
// }
// }
// return -1;
// }
// int gnGetPresentQueueIndex(gnPhysicalDevice device, gnWindowSurfaceHandle windowSurface) {
// for (int i = 0; i < device->queueProperties.queueCount; i++) {
// if (gnQueueCanPresentToSurface(device, i, windowSurface)) {
// return i;
// break;
// }
// }
// return -1;
// }
// gnPhysicalDeviceQueueProperties gnGetPhysicalDeviceQueueProperties(gnPhysicalOutputDeviceHandle device) { return device->queueProperties; }

View File

@@ -57,14 +57,14 @@ typedef struct gnPhysicalOutputDevice_t {
#endif
gnPhysicalOutputDeviceHandle* gnGetPhyscialDevices(gnInstanceHandle instance, uint32_t* count);
gnBool gnQueueCanPresentToSurface(gnPhysicalOutputDeviceHandle device, uint32_t queueIndex, gnWindowSurfaceHandle windowSurface);
gnBool gnPhysicalDeviceCanPresentToSurface(gnPhysicalOutputDeviceHandle device, gnWindowSurfaceHandle windowSurface);
gnPhysicalDeviceProperties gnGetPhysicalDeviceProperties(gnPhysicalOutputDeviceHandle device);
gnPhysicalDeviceFeatures gnGetPhysicalDeviceFeatures(gnPhysicalOutputDeviceHandle device);
// gnPhysicalDeviceProperties gnGetPhysicalDeviceProperties(gnPhysicalOutputDeviceHandle device);
// gnPhysicalDeviceFeatures gnGetPhysicalDeviceFeatures(gnPhysicalOutputDeviceHandle device);
// gnPhysicalDeviceQueueProperties gnGetPhysicalDeviceQueueProperties(gnPhysicalOutputDeviceHandle device);
gnBool gnHasGraphicsQueue(gnPhysicalOutputDeviceHandle device);
gnBool gnHasPresentQueue(gnPhysicalOutputDeviceHandle device, gnWindowSurfaceHandle windowSurface);
// gnBool gnHasGraphicsQueue(gnPhysicalOutputDeviceHandle device);
// gnBool gnHasPresentQueue(gnPhysicalOutputDeviceHandle device, gnWindowSurfaceHandle windowSurface);
int gnGetGraphicsQueueIndex(gnPhysicalOutputDeviceHandle device);
int gnGetPresentQueueIndex(gnPhysicalOutputDeviceHandle device, gnWindowSurfaceHandle windowSurface);
// int gnGetGraphicsQueueIndex(gnPhysicalOutputDeviceHandle device);
// int gnGetPresentQueueIndex(gnPhysicalOutputDeviceHandle device, gnWindowSurfaceHandle windowSurface);