Documentation for Core
Former-commit-id: d0d4a575149b9f3e70e07b3a815e669d6a79065f
This commit is contained in:
parent
8325db8037
commit
0a4381a95b
|
|
@ -47,6 +47,16 @@ namespace Nz
|
|||
};
|
||||
}
|
||||
|
||||
/*!
|
||||
* \class Nz::Initializer<Args...>
|
||||
* \brief Core class that represents a module initializer
|
||||
*/
|
||||
|
||||
/*!
|
||||
* \brief Constructs a Initializer object with a boolean
|
||||
*
|
||||
* \param initialize Initialize the module
|
||||
*/
|
||||
|
||||
template<typename... Args>
|
||||
Initializer<Args...>::Initializer(bool initialize) :
|
||||
|
|
@ -56,12 +66,24 @@ namespace Nz
|
|||
Initialize();
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Destructs the object and call Uninitialize
|
||||
*
|
||||
* \see Uninitialize
|
||||
*/
|
||||
|
||||
template<typename... Args>
|
||||
Initializer<Args...>::~Initializer()
|
||||
{
|
||||
Uninitialize();
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Initialize the module
|
||||
*
|
||||
* \see Uninitialize
|
||||
*/
|
||||
|
||||
template<typename... Args>
|
||||
bool Initializer<Args...>::Initialize()
|
||||
{
|
||||
|
|
@ -71,12 +93,23 @@ namespace Nz
|
|||
return m_initialized;
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Checks whether the module is initialized
|
||||
* \return true if initialized
|
||||
*/
|
||||
|
||||
template<typename... Args>
|
||||
bool Initializer<Args...>::IsInitialized() const
|
||||
{
|
||||
return m_initialized;
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Uninitialize the module
|
||||
*
|
||||
* \see Initialize
|
||||
*/
|
||||
|
||||
template<typename... Args>
|
||||
void Initializer<Args...>::Uninitialize()
|
||||
{
|
||||
|
|
@ -84,6 +117,11 @@ namespace Nz
|
|||
Detail::Initializer<Args...>::Uninit();
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Converts the initializer to boolean
|
||||
* \return true if initialized
|
||||
*/
|
||||
|
||||
template<typename... Args>
|
||||
Initializer<Args...>::operator bool() const
|
||||
{
|
||||
|
|
|
|||
|
|
@ -13,12 +13,24 @@
|
|||
|
||||
namespace Nz
|
||||
{
|
||||
/*!
|
||||
* \class Nz::CoreCore
|
||||
* \brief Core class that represents the module initializer of Core
|
||||
*/
|
||||
|
||||
/*!
|
||||
* \brief Initializes the Core module
|
||||
* \return true if initialization is successful
|
||||
*
|
||||
* \remark Produces a NazaraNotice
|
||||
*/
|
||||
|
||||
bool Core::Initialize()
|
||||
{
|
||||
if (s_moduleReferenceCounter > 0)
|
||||
{
|
||||
s_moduleReferenceCounter++;
|
||||
return true; // Déjà initialisé
|
||||
return true; // Already initialized
|
||||
}
|
||||
|
||||
s_moduleReferenceCounter++;
|
||||
|
|
@ -29,23 +41,34 @@ namespace Nz
|
|||
return true;
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Checks whether the module is initialized
|
||||
* \return true if module is initialized
|
||||
*/
|
||||
|
||||
bool Core::IsInitialized()
|
||||
{
|
||||
return s_moduleReferenceCounter != 0;
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Uninitializes the Core module
|
||||
*
|
||||
* \remark Produces a NazaraNotice
|
||||
*/
|
||||
|
||||
void Core::Uninitialize()
|
||||
{
|
||||
if (s_moduleReferenceCounter != 1)
|
||||
{
|
||||
// Le module est soit encore utilisé, soit pas initialisé
|
||||
// The module is still in use, or can not be uninitialized
|
||||
if (s_moduleReferenceCounter > 1)
|
||||
s_moduleReferenceCounter--;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
// Libération du module
|
||||
// Free of module
|
||||
s_moduleReferenceCounter = 0;
|
||||
|
||||
HardwareInfo::Uninitialize();
|
||||
|
|
|
|||
Loading…
Reference in New Issue