redo presentation queue waiting
This commit is contained in:
@@ -5,12 +5,22 @@
|
||||
typedef id<MTLTexture> metalTexture;
|
||||
GN_ARRAY_LIST(metalTexture);
|
||||
|
||||
typedef struct mtlImageNeeded {
|
||||
gnSemaphore semaphoreToSignal;
|
||||
uint32_t* whereToPut;
|
||||
} mtlImageNeeded;
|
||||
GN_ARRAY_LIST(mtlImageNeeded);
|
||||
|
||||
typedef struct gnPlatformPresentationQueue_t {
|
||||
metalTextureArrayList textures;
|
||||
uint32_tArrayList avaliableTextures;
|
||||
|
||||
mtlImageNeededArrayList neededImages;
|
||||
} gnPlatformPresentationQueue;
|
||||
|
||||
gnReturnCode createMetalPresentationQueue(gnPresentationQueueHandle presentationQueue, const gnDevice device, gnPresentationQueueInfo presentationInfo);
|
||||
gnReturnCode getMetalPresentQueueImageAsync(gnPresentationQueueHandle presentationQueue, uint64_t timeout, gnSemaphore semaphore, uint32_t* imageIndex);
|
||||
gnReturnCode getMetalPresentQueueImage(gnPresentationQueueHandle presentationQueue, uint32_t* imageIndex);
|
||||
void destroyMetalPresentationQueue(gnPresentationQueueHandle presentationQueue);
|
||||
|
||||
void mtlAddImageBackToQueue(gnPresentationQueue queue, uint32_t index);
|
||||
|
||||
Reference in New Issue
Block a user