From da70596895d8135e08f8caac6978117697b4c021 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Sun, 18 Aug 2024 21:39:29 +0200 Subject: [REFACTOR] Improved project structure. Signed-off-by: Amlal El Mahrouss --- dev/Kernel/Sources/Framebuffer.cxx | 113 ------------------------------------- 1 file changed, 113 deletions(-) delete mode 100644 dev/Kernel/Sources/Framebuffer.cxx (limited to 'dev/Kernel/Sources/Framebuffer.cxx') diff --git a/dev/Kernel/Sources/Framebuffer.cxx b/dev/Kernel/Sources/Framebuffer.cxx deleted file mode 100644 index 76fe7172..00000000 --- a/dev/Kernel/Sources/Framebuffer.cxx +++ /dev/null @@ -1,113 +0,0 @@ -/* ------------------------------------------- - - Copyright ZKA Technologies. - - File: Framebuffer.cxx - Purpose: Framebuffer object - - Revision History: - - 01/02/24: Added file (amlel) - 02/02/24: Add documentation (amlel) - 07/07/07: Moved Framebuffer methods into Kernel:: - -------------------------------------------- */ - -#include -#include - -/** - * @brief Framebuffer object implementation. - * - */ - -namespace Kernel -{ - Framebuffer::Framebuffer(_Input Ref& addr) - : fFrameBufferAddr(addr) - { - } - - /** - * @brief Get Pixel at **pos** - * - * @param pos position of pixel. - * @return volatile* - */ - _Output volatile UIntPtr* Framebuffer::operator[](_Input const UIntPtr& pos) - { - return (UIntPtr*)(fFrameBufferAddr->fBase * pos); - } - - /// @brief Boolean operator. - Framebuffer::operator bool() - { - return fFrameBufferAddr.Leak()->fBase != 0 && - fColour != FramebufferColorKind::INVALID && - fFrameBufferAddr.Leak()->fBase != kBadPtr; - } - - /// @brief Set color kind of framebuffer. - /// @param colour - /// @return - _Output const FramebufferColorKind& Framebuffer::Color( - const FramebufferColorKind& colour) - { - if (fColour != FramebufferColorKind::INVALID && - colour != FramebufferColorKind::INVALID) - { - fColour = colour; - } - - return fColour; - } - - /// @brief Leak framebuffer context. - /// @return The reference of the framebuffer context. - _Output Ref& Framebuffer::Leak() - { - return this->fFrameBufferAddr; - } - - /// @brief Draws a rectangle. - /// @param width - /// @param height - /// @param x - /// @param y - /// @param color - /// @return - _Output Framebuffer& Framebuffer::DrawRect(SizeT width, SizeT height, SizeT x, SizeT y, UInt32 color) - { - for (Kernel::SizeT i = x; i < width + x; ++i) - { - for (Kernel::SizeT u = y; u < height + y; ++u) - { - *(((volatile Kernel::UInt32*)(fFrameBufferAddr.Leak()->fBase + - 4 * fFrameBufferAddr.Leak()->fBpp * i + - 4 * u))) = color; - } - } - - return *this; - } - - /// @brief Put a pixel on the screen. - /// @param x - /// @param y - /// @param color - /// @return - _Output Framebuffer& Framebuffer::PutPixel(SizeT x, SizeT y, UInt32 color) - { - *(((volatile Kernel::UInt32*)(fFrameBufferAddr.Leak()->fBase + - 4 * fFrameBufferAddr.Leak()->fBpp * x + - 4 * y))) = color; - - return *this; - } - - const UInt32 kRgbRed = 0x000000FF; - const UInt32 kRgbGreen = 0x0000FF00; - const UInt32 kRgbBlue = 0x00FF0000; - const UInt32 kRgbBlack = 0x00000000; - const UInt32 kRgbWhite = 0xFFFFFFFF; -} // namespace Kernel -- cgit v1.2.3