diff options
Diffstat (limited to 'src/core/frontend/framebuffer_layout.h')
| -rw-r--r-- | src/core/frontend/framebuffer_layout.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/core/frontend/framebuffer_layout.h b/src/core/frontend/framebuffer_layout.h index d2370adde..1d39c1faf 100644 --- a/src/core/frontend/framebuffer_layout.h +++ b/src/core/frontend/framebuffer_layout.h | |||
| @@ -18,6 +18,13 @@ enum ScreenDocked : u32 { | |||
| 18 | HeightDocked = 1080, | 18 | HeightDocked = 1080, |
| 19 | }; | 19 | }; |
| 20 | 20 | ||
| 21 | enum class AspectRatio { | ||
| 22 | Default, | ||
| 23 | R4_3, | ||
| 24 | R21_9, | ||
| 25 | StretchToWindow, | ||
| 26 | }; | ||
| 27 | |||
| 21 | /// Describes the layout of the window framebuffer | 28 | /// Describes the layout of the window framebuffer |
| 22 | struct FramebufferLayout { | 29 | struct FramebufferLayout { |
| 23 | u32 width{ScreenUndocked::Width}; | 30 | u32 width{ScreenUndocked::Width}; |
| @@ -48,4 +55,12 @@ FramebufferLayout DefaultFrameLayout(u32 width, u32 height); | |||
| 48 | */ | 55 | */ |
| 49 | FramebufferLayout FrameLayoutFromResolutionScale(u32 res_scale); | 56 | FramebufferLayout FrameLayoutFromResolutionScale(u32 res_scale); |
| 50 | 57 | ||
| 58 | /** | ||
| 59 | * Convenience method to determine emulation aspect ratio | ||
| 60 | * @param aspect Represents the index of aspect ratio stored in Settings::values.aspect_ratio | ||
| 61 | * @param window_aspect_ratio Current window aspect ratio | ||
| 62 | * @return Emulation render window aspect ratio | ||
| 63 | */ | ||
| 64 | float EmulationAspectRatio(AspectRatio aspect, float window_aspect_ratio); | ||
| 65 | |||
| 51 | } // namespace Layout | 66 | } // namespace Layout |