diff options
Diffstat (limited to 'src/kernel/GfxKit/GPU.h')
| -rw-r--r-- | src/kernel/GfxKit/GPU.h | 36 |
1 files changed, 36 insertions, 0 deletions
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 |
