From d1aee0d570f62f5cba0de05f807761ac9d27bba8 Mon Sep 17 00:00:00 2001 From: Greg Wells Date: Fri, 23 May 2025 21:57:40 -0400 Subject: [PATCH] recreate presentaion queue to work in C --- .../gryphn_present_queue_state.h | 4 +- .../gryphn_presentation_details.h | 4 +- .../gryphn_presentation_queue.c | 6 +++ .../gryphn_presentation_queue.cpp | 6 --- .../gryphn_presentation_queue.h | 40 +++++++++---------- 5 files changed, 29 insertions(+), 31 deletions(-) create mode 100644 src/core/presentation_queue/gryphn_presentation_queue.c delete mode 100644 src/core/presentation_queue/gryphn_presentation_queue.cpp diff --git a/src/core/presentation_queue/gryphn_present_queue_state.h b/src/core/presentation_queue/gryphn_present_queue_state.h index 193fea9..9130f58 100644 --- a/src/core/presentation_queue/gryphn_present_queue_state.h +++ b/src/core/presentation_queue/gryphn_present_queue_state.h @@ -1,5 +1,5 @@ #pragma once -enum gnPresentationQueueState { +typedef enum gnPresentationQueueState_e { GN_OUT_OF_DATE, GN_SUBOPTIMAL, GN_VALID -}; +} gnPresentationQueueState; diff --git a/src/core/presentation_queue/gryphn_presentation_details.h b/src/core/presentation_queue/gryphn_presentation_details.h index 880ee31..9a1b1bd 100644 --- a/src/core/presentation_queue/gryphn_presentation_details.h +++ b/src/core/presentation_queue/gryphn_presentation_details.h @@ -1,7 +1,7 @@ #pragma once #include -struct gnPresentationDetails { +typedef struct gnPresentationDetails_t { gnUInt ImageCount; gnUInt2 ImageSize; -}; +} gnPresentationDetails; diff --git a/src/core/presentation_queue/gryphn_presentation_queue.c b/src/core/presentation_queue/gryphn_presentation_queue.c new file mode 100644 index 0000000..2de9c41 --- /dev/null +++ b/src/core/presentation_queue/gryphn_presentation_queue.c @@ -0,0 +1,6 @@ +#include "gryphn_presentation_queue.h" + +// gnTexture* gnGetPresentationQueueImage(gnPresentationQueue& presentationQueue, int index) { +// // if (index < gnListLength(presentationQueue.images)) +// return gnListGetPtr(presentationQueue.images, index); // zero fucking error checking in this file, im not doing that shit +// } diff --git a/src/core/presentation_queue/gryphn_presentation_queue.cpp b/src/core/presentation_queue/gryphn_presentation_queue.cpp deleted file mode 100644 index 7fb1f87..0000000 --- a/src/core/presentation_queue/gryphn_presentation_queue.cpp +++ /dev/null @@ -1,6 +0,0 @@ -#include "gryphn_presentation_queue.h" - -gnTexture* gnGetPresentationQueueImage(gnPresentationQueue& presentationQueue, int index) { - // if (index < gnListLength(presentationQueue.images)) - return gnListGetPtr(presentationQueue.images, index); // zero fucking error checking in this file, im not doing that shit -} diff --git a/src/core/presentation_queue/gryphn_presentation_queue.h b/src/core/presentation_queue/gryphn_presentation_queue.h index 0736387..a203972 100644 --- a/src/core/presentation_queue/gryphn_presentation_queue.h +++ b/src/core/presentation_queue/gryphn_presentation_queue.h @@ -2,30 +2,28 @@ #include #include "gryphn_presentation_details.h" #include "core/output_device/gryphn_output_device.h" -#include "core/sync_objects/gryphn_sync_semaphore.h" +// #include "core/sync_objects/gryphn_sync_semaphore.h" #include "gryphn_present_queue_state.h" -#include "core/textures/gryphn_texture.h" -#include "gryphn_device_presentation_details.h" +// #include "core/textures/gryphn_texture.h" +// #include "gryphn_device_presentation_details.h" -struct gnPlatformPresentationQueue; +struct gnPlatformPresentationQueue_t; -struct gnPresentationQueue { -ACCESS_LEVEL: - gnPlatformPresentationQueue* presentationQueue; - bool valid = false; - gnList images = gnCreateList(); -public: - gnPresentationQueue() {} -}; +typedef struct gnPresentationQueue_t { + struct gnPlatformPresentationQueue* presentationQueue; + gnBool valid; + // uint32_t textureCount; + // gnTexture* texturs; +} gnPresentationQueue; -gnTexture* gnGetPresentationQueueImage(gnPresentationQueue& presentationQueue, int index); +// gnTexture* gnGetPresentationQueueImage(gnPresentationQueue& presentationQueue, int index); -inline gnReturnCode (*gnCreatePresentationQueue)(gnPresentationQueue* presentationQueue, const gnOutputDevice& device, gnPresentationDetails& details); -inline void (*gnDestroyPresentationQueue)(gnPresentationQueue& queue); -inline gnImageFormat (*_gnPresentationQueueGetImageFormat)(gnPresentationQueue& presentationQueue); -inline gnImageFormat gnPresentationQueueGetImageFormat(gnPresentationQueue& presentationQueue) { +// inline gnReturnCode (*gnCreatePresentationQueue)(gnPresentationQueue* presentationQueue, const gnOutputDevice& device, gnPresentationDetails& details); +// inline void (*gnDestroyPresentationQueue)(gnPresentationQueue& queue); +// inline gnImageFormat (*_gnPresentationQueueGetImageFormat)(gnPresentationQueue& presentationQueue); +// inline gnImageFormat gnPresentationQueueGetImageFormat(gnPresentationQueue& presentationQueue) { // std::cout << "gnPresentationQueueGetImageFormat should lowkey become supported\n"; - return _gnPresentationQueueGetImageFormat(presentationQueue); -} -inline gnPresentationQueueState (*gnPresentationQueueGetState)(gnPresentationQueue& presentationQueue); -inline gnReturnCode (*gnPresentationQueueGetNextImageAsync)(gnPresentationQueue& presentationQueue, const gnSyncSemaphore& semaphore, gnUInt* imageIndex); + // return _gnPresentationQueueGetImageFormat(presentationQueue); +// } +// inline gnPresentationQueueState (*gnPresentationQueueGetState)(gnPresentationQueue& presentationQueue); +// inline gnReturnCode (*gnPresentationQueueGetNextImageAsync)(gnPresentationQueue& presentationQueue, const gnSyncSemaphore& semaphore, gnUInt* imageIndex);