Utility: Add Parameters and NoWindowSystem option

Temporary fix until Utility module has been split.


Former-commit-id: 702929f41c8f1dd4015b64e9b331c150ad6fd953 [formerly f113bd948da6a8c5399aab48f53b6cb5ca272081] [formerly 593365938d7e3a835b94727ec6dc744a7a113822 [formerly e43d02e4e221e5c1d85320d71d1a258db44768d1]]
Former-commit-id: 29e2dd7ff9ee608847e3f78a7474e3286343b152 [formerly cf10e1a9dd5ca6df0bdf39730e2b38e9ea0d673a]
Former-commit-id: a479d4eb078b30d6e7b34bd53dba6366fad643de
This commit is contained in:
Lynix 2016-10-05 00:26:06 +02:00
parent c61ce3a76e
commit fc3fb062e0
3 changed files with 24 additions and 3 deletions

View File

@ -59,6 +59,13 @@ namespace Ndk
// Initialize the engine first
// Shared modules
#ifdef NDK_SERVER
Nz::ParameterList parameters;
parameters.SetParameter("NoWindowSystem", true);
Nz::Utility::SetParameters(parameters);
#endif
Nz::Lua::Initialize();
Nz::Noise::Initialize();
Nz::Physics::Initialize();

View File

@ -9,6 +9,7 @@
#include <Nazara/Prerequesites.hpp>
#include <Nazara/Core/Initializer.hpp>
#include <Nazara/Core/ParameterList.hpp>
#include <Nazara/Utility/Config.hpp>
#include <Nazara/Utility/Enums.hpp>
@ -24,12 +25,15 @@ namespace Nz
static bool IsInitialized();
static void SetParameters(const ParameterList& parameters);
static void Uninitialize();
static unsigned int ComponentCount[ComponentType_Max+1];
static std::size_t ComponentStride[ComponentType_Max+1];
private:
static ParameterList s_initializationParameters;
static unsigned int s_moduleReferenceCounter;
};
}

View File

@ -102,10 +102,14 @@ namespace Nz
return false;
}
if (!Window::Initialize())
bool bParam;
if (!s_initializationParameters.GetBooleanParameter("NoWindowSystem", &bParam) || bParam)
{
NazaraError("Failed to initialize window's system");
return false;
if (!Window::Initialize())
{
NazaraError("Failed to initialize window's system");
return false;
}
}
// On enregistre les loaders pour les extensions
@ -147,6 +151,11 @@ namespace Nz
return s_moduleReferenceCounter != 0;
}
void Utility::SetParameters(const ParameterList& parameters)
{
s_initializationParameters = parameters;
}
void Utility::Uninitialize()
{
if (s_moduleReferenceCounter != 1)
@ -227,5 +236,6 @@ namespace Nz
static_assert(ComponentType_Max+1 == 14, "Component stride array is incomplete");
ParameterList Utility::s_initializationParameters;
unsigned int Utility::s_moduleReferenceCounter = 0;
}