diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2026-01-19 21:51:20 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@nekernel.org> | 2026-01-19 21:51:20 +0100 |
| commit | 7ec77f42f45fb3b3479818636943923b9416a170 (patch) | |
| tree | 33f608b06d865285fb6ef1eaf752ae77cbb16a17 /src/kernel/GfxKit | |
| parent | 465a99f17f9e8f56813f225f09a6a1a498be9deb (diff) | |
chore: {kernel, launch, libSystem}: Implementation and WiP improvements.v0.1.211
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'src/kernel/GfxKit')
| -rw-r--r-- | src/kernel/GfxKit/FB.h | 8 | ||||
| -rw-r--r-- | src/kernel/GfxKit/GPU.h | 36 |
2 files changed, 40 insertions, 4 deletions
diff --git a/src/kernel/GfxKit/FB.h b/src/kernel/GfxKit/FB.h index 79539995..462608ae 100644 --- a/src/kernel/GfxKit/FB.h +++ b/src/kernel/GfxKit/FB.h @@ -12,10 +12,10 @@ namespace Kernel { class FBDeviceInterface; struct FBDevicePacket; -typedef UInt32 FBCoord2x2; -typedef UInt32 FBDim2x2; -typedef UInt32 FBColorProfile; -typedef UInt32 FBFlags; +using FBCoord2x2 = UInt32; +using FBDim2x2 = UInt32; +using FBColorProfile = UInt32; +using FBFlags = UInt32; /// @brief Framebuffer device interface packet. /// @details This structure is used to send and receive data from the framebuffer device. diff --git a/src/kernel/GfxKit/GPU.h b/src/kernel/GfxKit/GPU.h new file mode 100644 index 00000000..78d71558 --- /dev/null +++ b/src/kernel/GfxKit/GPU.h @@ -0,0 +1,36 @@ +// Copyright 2026, Amlal El Mahrouss (amlal@nekernel.org) +// Licensed under the Apache License, Version 2.0 (see LICENSE file) +// Official repository: https://github.com/nekernel-org/nekernel + +#ifndef GFXKIT_FB_H +#define GFXKIT_FB_H + +#include <KernelKit/DeviceMgr.h> + +namespace Kernel { + +class GPUDeviceInterface; + +/// @brief Framebuffer device interface. +/// @details This class is used to send and receive data from the framebuffer device. +/// @note The class is derived from the IDevice class. +class GPUDeviceInterface NE_DEVICE<VoidPtr> { + public: + GPUDeviceInterface(void (*out)(IDevice* self, GPUDeviceInterface* out), + void (*in)(IDevice* self, GPUDeviceInterface* in)); + + virtual ~GPUDeviceInterface() override; + + public: + GPUDeviceInterface& operator=(const GPUDeviceInterface&) = default; + GPUDeviceInterface(const GPUDeviceInterface&) = default; + const Char* Name() const override; + + public: + GPUDeviceInterface& operator<<(VoidPtr dat) override; + GPUDeviceInterface& operator>>(VoidPtr dat) override; +}; + +} // namespace Kernel + +#endif |
