Files
eden/src/core/frontend/framebuffer_layout.h
T

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

45 lines
1.1 KiB
C++
Raw Normal View History

// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
2016-05-03 00:07:17 -06:00
#pragma once
2020-08-30 00:07:38 +02:00
#include "common/common_types.h"
2016-05-03 00:07:17 -06:00
#include "common/math_util.h"
namespace Settings {
enum class AspectRatio : u32;
}
2016-05-03 00:07:17 -06:00
namespace Layout {
namespace MinimumSize {
constexpr u32 Width = 640;
constexpr u32 Height = 360;
} // namespace MinimumSize
namespace ScreenUndocked {
constexpr u32 Width = 1280;
constexpr u32 Height = 720;
} // namespace ScreenUndocked
namespace ScreenDocked {
constexpr u32 Width = 1920;
constexpr u32 Height = 1080;
} // namespace ScreenDocked
/// @brief Describes the layout of the window framebuffer
2016-05-03 00:07:17 -06:00
struct FramebufferLayout {
u32 width{ScreenUndocked::Width};
u32 height{ScreenUndocked::Height};
Common::Rectangle<u32> screen;
2021-11-20 17:48:22 -05:00
bool is_srgb{};
2016-05-03 00:07:17 -06:00
};
FramebufferLayout DefaultFrameLayout(u32 width, u32 height) noexcept;
float EmulationAspectRatio(Settings::AspectRatio aspect, float window_aspect_ratio) noexcept;
2020-02-14 00:06:26 -05:00
} // namespace Layout