1//************************************ bs::framework - Copyright 2018 Marko Pintera **************************************//
2//*********** Licensed under the MIT license. See LICENSE.md for full terms. This notice is not to be removed. ***********//
3#pragma once
4
5#include "BsPrerequisites.h"
6#include "Reflection/BsRTTIType.h"
7#include "Utility/BsGameSettings.h"
8
9namespace bs
10{
11 /** @cond RTTI */
12 /** @addtogroup RTTI-Impl-Engine
13 * @{
14 */
15
16 class BS_EXPORT GameSettingsRTTI : public RTTIType <GameSettings, IReflectable, GameSettingsRTTI>
17 {
18 private:
19 BS_BEGIN_RTTI_MEMBERS
20 BS_RTTI_MEMBER_PLAIN(mainSceneUUID, 0)
21 BS_RTTI_MEMBER_PLAIN(fullscreen, 1)
22 BS_RTTI_MEMBER_PLAIN(useDesktopResolution, 2)
23 BS_RTTI_MEMBER_PLAIN(resolutionWidth, 3)
24 BS_RTTI_MEMBER_PLAIN(resolutionHeight, 4)
25 BS_RTTI_MEMBER_PLAIN(titleBarText, 5)
26 BS_END_RTTI_MEMBERS
27
28 public:
29 const String& getRTTIName() override
30 {
31 static String name = "GameSettings";
32 return name;
33 }
34
35 UINT32 getRTTIId() override
36 {
37 return TID_GameSettings;
38 }
39
40 SPtr<IReflectable> newRTTIObject() override
41 {
42 return bs_shared_ptr_new<GameSettings>();
43 }
44 };
45
46 /** @} */
47 /** @endcond */
48}
49