1 /* 2 * Copyright (C) 2017-2018 Team Kodi 3 * This file is part of Kodi - https://kodi.tv 4 * 5 * SPDX-License-Identifier: GPL-2.0-or-later 6 * See LICENSES/README.md for more information. 7 */ 8 9 #include "GUIRenderSettings.h" 10 11 #include "GUIGameControl.h" 12 #include "threads/SingleLock.h" 13 14 using namespace KODI; 15 using namespace RETRO; 16 CGUIRenderSettings(CGUIGameControl & guiControl)17CGUIRenderSettings::CGUIRenderSettings(CGUIGameControl& guiControl) : m_guiControl(guiControl) 18 { 19 } 20 HasVideoFilter() const21bool CGUIRenderSettings::HasVideoFilter() const 22 { 23 return m_guiControl.HasVideoFilter(); 24 } 25 HasStretchMode() const26bool CGUIRenderSettings::HasStretchMode() const 27 { 28 return m_guiControl.HasStretchMode(); 29 } 30 HasRotation() const31bool CGUIRenderSettings::HasRotation() const 32 { 33 return m_guiControl.HasRotation(); 34 } 35 GetSettings() const36CRenderSettings CGUIRenderSettings::GetSettings() const 37 { 38 CSingleLock lock(m_mutex); 39 40 return m_renderSettings; 41 } 42 GetDimensions() const43CRect CGUIRenderSettings::GetDimensions() const 44 { 45 CSingleLock lock(m_mutex); 46 47 return m_renderDimensions; 48 } 49 Reset()50void CGUIRenderSettings::Reset() 51 { 52 CSingleLock lock(m_mutex); 53 54 return m_renderSettings.Reset(); 55 } 56 SetSettings(CRenderSettings settings)57void CGUIRenderSettings::SetSettings(CRenderSettings settings) 58 { 59 CSingleLock lock(m_mutex); 60 61 m_renderSettings = settings; 62 } 63 SetDimensions(const CRect & dimensions)64void CGUIRenderSettings::SetDimensions(const CRect& dimensions) 65 { 66 CSingleLock lock(m_mutex); 67 68 m_renderDimensions = dimensions; 69 } 70 SetVideoFilter(const std::string & videoFilter)71void CGUIRenderSettings::SetVideoFilter(const std::string& videoFilter) 72 { 73 CSingleLock lock(m_mutex); 74 75 m_renderSettings.VideoSettings().SetVideoFilter(videoFilter); 76 } 77 SetStretchMode(STRETCHMODE stretchMode)78void CGUIRenderSettings::SetStretchMode(STRETCHMODE stretchMode) 79 { 80 CSingleLock lock(m_mutex); 81 82 m_renderSettings.VideoSettings().SetRenderStretchMode(stretchMode); 83 } 84 SetRotationDegCCW(unsigned int rotationDegCCW)85void CGUIRenderSettings::SetRotationDegCCW(unsigned int rotationDegCCW) 86 { 87 CSingleLock lock(m_mutex); 88 89 m_renderSettings.VideoSettings().SetRenderRotation(rotationDegCCW); 90 } 91