6#include <SDL/sdl_interface.h>
7#include <Common/primitive_type.h>
8#include <Math/TVector2.h>
9#include <Utility/TSpan.h>
35 TSpanView<const char*> m_cmdArgs;
40 ClassType clazz(
"app-settings");
41 clazz.docName(
"Application Settings");
42 clazz.description(
"Settings for the application.");
43 clazz.baseOn<Option>();
45 TSdlString<OwnerType>
title(
"title", &OwnerType::title);
47 "Title of the application.");
48 title.defaultTo(
"Photon Editor");
49 clazz.addField(
title);
51 TSdlVector2S<OwnerType>
displaySizePx(
"display-size", &OwnerType::displaySizePx);
53 "Dimensions of the area for showing content.");
57 TSdlUInt32<OwnerType>
maxFPS(
"max-fps", &OwnerType::maxFPS);
59 "Maximum frames per second when displaying content.");
63 TSdlEnumField<OwnerType, ghi::EGraphicsAPI>
graphicsAPI(
"graphics-api", &OwnerType::graphicsAPI);
65 "The hardware rendering API to use when displaying content.");
69 TSdlBool<OwnerType>
useDebugModeGHI(
"use-debug-mode-ghi", &OwnerType::useDebugModeGHI);
71 "Whether to use GHI with better debug ability. This kind of GHI, if supported, can "
72 "introduce extra overhead during runtime.");
Definition AppSettings.h:17
PH_DEFINE_SDL_CLASS(TSdlOwnerClass< AppSettings >)
Definition AppSettings.h:38
bool useDebugModeGHI
Definition AppSettings.h:23
std::string title
Definition AppSettings.h:19
uint32 maxFPS
Definition AppSettings.h:21
void setCmdArgs(int argc, char *argv[])
Definition AppSettings.cpp:11
ghi::EGraphicsAPI graphicsAPI
Definition AppSettings.h:22
TSpanView< const char * > getCmdArgs()
Additional arguments passed from command line. Useful if some behavior want to be controlled/overridd...
Definition AppSettings.cpp:6
math::Vector2S displaySizePx
Definition AppSettings.h:20
EGraphicsAPI
Definition EGraphicsAPI.h:7
Definition ph_editor.h:10