Sdk/Application: Add command-line arguments handling

Former-commit-id: efe6c5a1d911bb78314f8819575699874f5101e8 [formerly a9b33eea0b4b261d3e3a63d8949512f737dbe1e1] [formerly bd00d4e8009ff0efa74e6a27d78960f6d3d72c17 [formerly 17b26899d0c158c77ea0ab4cfa243e92c2145b6b]]
Former-commit-id: 4caea7e656e3718e1d462c5ed280aa6353368166 [formerly b82d884df55141a10251e84e54e0a40f84db2a5e]
Former-commit-id: 3798d603338416b18a4d427cf8b3cb87bac12ff6
This commit is contained in:
Lynix
2016-08-28 21:47:29 +02:00
parent cba0190f03
commit d9d2347688
5 changed files with 132 additions and 28 deletions

View File

@@ -11,6 +11,7 @@
#include <NDK/EntityOwner.hpp>
#include <NDK/World.hpp>
#include <Nazara/Core/Clock.hpp>
#include <map>
#include <list>
#include <set>
#include <vector>
@@ -35,7 +36,7 @@ namespace Ndk
#endif
inline Application();
inline Application(int argc, const char* argv[]);
Application(int argc, char* argv[]);
Application(const Application&) = delete;
Application(Application&&) = delete;
inline ~Application();
@@ -53,8 +54,14 @@ namespace Ndk
inline FPSCounterOverlay& GetFPSCounterOverlay(std::size_t windowIndex = 0U);
#endif
inline const std::set<Nz::String>& GetOptions() const;
inline const std::map<Nz::String, Nz::String>& GetParameters() const;
inline float GetUpdateTime() const;
inline bool HasOption(const Nz::String& option) const;
inline bool HasParameter(const Nz::String& key, Nz::String* value) const;
#ifndef NDK_SERVER
inline bool IsConsoleEnabled() const;
inline bool IsFPSCounterEnabled() const;
@@ -120,6 +127,8 @@ namespace Ndk
template<typename T> void SetupWindow(WindowInfo& info, T* renderTarget, std::true_type /*isRenderTarget*/);
template<typename T> void SetupWindow(WindowInfo& /*info*/, T* /*renderTarget*/, std::false_type /*isNotRenderTarget*/);
std::map<Nz::String, Nz::String> m_parameters;
std::set<Nz::String> m_options;
std::vector<WindowInfo> m_windows;
#endif
std::list<World> m_worlds;