From 486425ed00acec134f8799bdde64bfd093c5fb55 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Thu, 26 Dec 2024 21:19:14 +0100 Subject: IMPL: A lot of new changes, see details. Signed-off-by: Amlal El Mahrouss --- dev/LibSCI/GPU.h | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 dev/LibSCI/GPU.h (limited to 'dev/LibSCI/GPU.h') diff --git a/dev/LibSCI/GPU.h b/dev/LibSCI/GPU.h new file mode 100644 index 00000000..976ad2e5 --- /dev/null +++ b/dev/LibSCI/GPU.h @@ -0,0 +1,50 @@ +/* ------------------------------------------- + +Copyright (C) 2024, Theater Quality Inc, all rights reserved. + +File: GPU.h +Purpose: GFX System Calls. + +------------------------------------------- */ + +#ifndef SCIKIT_GPU_H +#define SCIKIT_GPU_H + +#include + +// ------------------------------------------------------------------------------------------ // +// GPU API. +// ------------------------------------------------------------------------------------------ // + +// ------------------------------------------------------------------------------------------ // +// @brief Command buffer structure type. +// ------------------------------------------------------------------------------------------ // +struct GPU_CMD_BUFFER final +{ + SizeT X, Y, Z; + VoidPtr FrameData; + SizeT FrameDataSz; + SizeT BackBufferLayer; + Bool IsGPGPUData; + Bool BackBufferFirst; + + Bool isGPGPUData() + { + return !this->BackBufferFirst && this->IsGPGPUData; + } + + Bool isValid() + { + return this->FrameData && this->FrameDataSz > 0; + } +}; + +typedef VoidPtr GPUObject; + +IMPORT_C GPUObject GPUNewFromDeviceName(_Input const Char* device_name); + +IMPORT_C SInt32 GPUDisposeDevice(GPUObject gpu_handle, Bool cancel_all, Bool flush_all); + +IMPORT_C SInt32 GPUSendCmdBufferListWithCnt(GPU_CMD_BUFFER** cmd_list, SizeT cmd_list_cnt); + +#endif // ifndef SCIKIT_GPU_H -- cgit v1.2.3