diff options
author | ameerj <52414509+ameerj@users.noreply.github.com> | 2021-10-12 00:35:01 -0400 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2021-11-16 22:11:31 +0100 |
commit | abd07e41582b6d8f7efdedb936cdd7a7fddf9912 (patch) | |
tree | 4b1b3c2a676abc935517b669566068270029b6d3 /src/common/settings.h | |
parent | b14f2c7c826b8bbea02c1f2674ab024a5ae0695e (diff) |
video_core: Refactor resolution scale function
Diffstat (limited to 'src/common/settings.h')
-rw-r--r-- | src/common/settings.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/common/settings.h b/src/common/settings.h index f629c7c561..09f7cdd842 100644 --- a/src/common/settings.h +++ b/src/common/settings.h @@ -72,6 +72,20 @@ struct ResolutionScalingInfo { f32 up_factor{1.0f}; f32 down_factor{1.0f}; bool active{}; + + s32 ScaleUp(s32 value) const { + if (value == 0) { + return 0; + } + return std::max((value * static_cast<s32>(up_scale)) >> static_cast<s32>(down_shift), 1); + } + + u32 ScaleUp(u32 value) const { + if (value == 0U) { + return 0U; + } + return std::max((value * up_scale) >> down_shift, 1U); + } }; /** The BasicSetting class is a simple resource manager. It defines a label and default value |