/* * Copyright (c) 2023-2024, Aliaksandr Kalenik * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include #include #include #include namespace Gfx { class ImmutableBitmap final : public RefCounted { public: static NonnullRefPtr create(NonnullRefPtr bitmap); ~ImmutableBitmap() = default; Bitmap const& bitmap() const { return *m_bitmap; } size_t width() const { return m_bitmap->width(); } size_t height() const { return m_bitmap->height(); } IntRect rect() const { return m_bitmap->rect(); } IntSize size() const { return m_bitmap->size(); } private: NonnullRefPtr m_bitmap; explicit ImmutableBitmap(NonnullRefPtr bitmap); }; }