Added a Library to most reference-counted classes
Former-commit-id: 3ed409a71dcd5ce4eec7672ac26f8fff00e3b136
This commit is contained in:
@@ -511,4 +511,21 @@ void NzAnimation::RemoveSequence(unsigned int index)
|
||||
m_impl->sequences.erase(it);
|
||||
}
|
||||
|
||||
bool NzAnimation::Initialize()
|
||||
{
|
||||
if (!NzAnimationLibrary::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialise library");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void NzAnimation::Uninitialize()
|
||||
{
|
||||
NzAnimationLibrary::Uninitialize();
|
||||
}
|
||||
|
||||
NzAnimationLibrary::LibraryMap NzAnimation::s_library;
|
||||
NzAnimationLoader::LoaderList NzAnimation::s_loaders;
|
||||
|
||||
@@ -363,15 +363,6 @@ unsigned int NzFont::GetDefaultMinimumStepSize()
|
||||
return s_defaultMinimumStepSize;
|
||||
}
|
||||
|
||||
bool NzFont::Initialize()
|
||||
{
|
||||
s_defaultAtlas.reset(new NzGuillotineImageAtlas);
|
||||
s_defaultGlyphBorder = 1;
|
||||
s_defaultMinimumStepSize = 1;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void NzFont::SetDefaultAtlas(const std::shared_ptr<NzAbstractAtlas>& atlas)
|
||||
{
|
||||
s_defaultAtlas = atlas;
|
||||
@@ -395,12 +386,6 @@ void NzFont::SetDefaultMinimumStepSize(unsigned int minimumStepSize)
|
||||
s_defaultMinimumStepSize = minimumStepSize;
|
||||
}
|
||||
|
||||
void NzFont::Uninitialize()
|
||||
{
|
||||
s_defaultAtlas.reset();
|
||||
s_defaultFont.Reset();
|
||||
}
|
||||
|
||||
nzUInt64 NzFont::ComputeKey(unsigned int characterSize, nzUInt32 style) const
|
||||
{
|
||||
// On prend le pas en compte
|
||||
@@ -573,8 +558,31 @@ const NzFont::Glyph& NzFont::PrecacheGlyph(GlyphMap& glyphMap, unsigned int char
|
||||
return glyph;
|
||||
}
|
||||
|
||||
bool NzFont::Initialize()
|
||||
{
|
||||
if (!NzFontLibrary::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialise library");
|
||||
return false;
|
||||
}
|
||||
|
||||
s_defaultAtlas.reset(new NzGuillotineImageAtlas);
|
||||
s_defaultGlyphBorder = 1;
|
||||
s_defaultMinimumStepSize = 1;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void NzFont::Uninitialize()
|
||||
{
|
||||
s_defaultAtlas.reset();
|
||||
s_defaultFont.Reset();
|
||||
NzFontLibrary::Uninitialize();
|
||||
}
|
||||
|
||||
std::shared_ptr<NzAbstractAtlas> NzFont::s_defaultAtlas;
|
||||
NzFontRef NzFont::s_defaultFont;
|
||||
NzFontLibrary::LibraryMap NzFont::s_library;
|
||||
NzFontLoader::LoaderList NzFont::s_loaders;
|
||||
unsigned int NzFont::s_defaultGlyphBorder;
|
||||
unsigned int NzFont::s_defaultMinimumStepSize;
|
||||
|
||||
@@ -1392,5 +1392,22 @@ void NzImage::ReleaseImage()
|
||||
m_sharedImage = &emptyImage;
|
||||
}
|
||||
|
||||
bool NzImage::Initialize()
|
||||
{
|
||||
if (!NzImageLibrary::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialise library");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void NzImage::Uninitialize()
|
||||
{
|
||||
NzImageLibrary::Uninitialize();
|
||||
}
|
||||
|
||||
NzImage::SharedImage NzImage::emptyImage(0, nzImageType_2D, nzPixelFormat_Undefined, 1, nullptr, 0, 0, 0);
|
||||
NzImageLibrary::LibraryMap NzImage::s_library;
|
||||
NzImageLoader::LoaderList NzImage::s_loaders;
|
||||
|
||||
@@ -1002,4 +1002,21 @@ void NzMesh::Transform(const NzMatrix4f& matrix)
|
||||
m_impl->aabbUpdated = false;
|
||||
}
|
||||
|
||||
bool NzMesh::Initialize()
|
||||
{
|
||||
if (!NzMeshLibrary::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialise library");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void NzMesh::Uninitialize()
|
||||
{
|
||||
NzMeshLibrary::Uninitialize();
|
||||
}
|
||||
|
||||
NzMeshLibrary::LibraryMap NzMesh::s_library;
|
||||
NzMeshLoader::LoaderList NzMesh::s_loaders;
|
||||
|
||||
@@ -416,3 +416,21 @@ void NzSkeleton::UpdateJointMap() const
|
||||
|
||||
m_impl->jointMapUpdated = true;
|
||||
}
|
||||
|
||||
bool NzSkeleton::Initialize()
|
||||
{
|
||||
if (!NzSkeletonLibrary::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialise library");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void NzSkeleton::Uninitialize()
|
||||
{
|
||||
NzSkeletonLibrary::Uninitialize();
|
||||
}
|
||||
|
||||
NzSkeletonLibrary::LibraryMap NzSkeleton::s_library;
|
||||
|
||||
@@ -10,16 +10,20 @@
|
||||
#include <Nazara/Core/Log.hpp>
|
||||
#include <Nazara/Core/TaskScheduler.hpp>
|
||||
#include <Nazara/Core/Thread.hpp>
|
||||
#include <Nazara/Utility/Animation.hpp>
|
||||
#include <Nazara/Utility/Buffer.hpp>
|
||||
#include <Nazara/Utility/Config.hpp>
|
||||
#include <Nazara/Utility/Font.hpp>
|
||||
#include <Nazara/Utility/Image.hpp>
|
||||
#include <Nazara/Utility/Loaders/FreeType.hpp>
|
||||
#include <Nazara/Utility/Loaders/MD2.hpp>
|
||||
#include <Nazara/Utility/Loaders/MD5Anim.hpp>
|
||||
#include <Nazara/Utility/Loaders/MD5Mesh.hpp>
|
||||
#include <Nazara/Utility/Loaders/PCX.hpp>
|
||||
#include <Nazara/Utility/Loaders/STB.hpp>
|
||||
#include <Nazara/Utility/Mesh.hpp>
|
||||
#include <Nazara/Utility/PixelFormat.hpp>
|
||||
#include <Nazara/Utility/Skeleton.hpp>
|
||||
#include <Nazara/Utility/VertexDeclaration.hpp>
|
||||
#include <Nazara/Utility/Window.hpp>
|
||||
#include <Nazara/Utility/Debug.hpp>
|
||||
@@ -44,6 +48,12 @@ bool NzUtility::Initialize()
|
||||
// Initialisation du module
|
||||
NzCallOnExit onExit(NzUtility::Uninitialize);
|
||||
|
||||
if (!NzAnimation::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialize animations");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!NzBuffer::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialize buffers");
|
||||
@@ -56,12 +66,30 @@ bool NzUtility::Initialize()
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!NzImage::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialize images");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!NzMesh::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialize meshes");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!NzPixelFormat::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialize pixel formats");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!NzSkeleton::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialize skeletons");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!NzVertexDeclaration::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialize vertex declarations");
|
||||
@@ -129,9 +157,13 @@ void NzUtility::Uninitialize()
|
||||
|
||||
NzWindow::Uninitialize();
|
||||
NzVertexDeclaration::Uninitialize();
|
||||
NzSkeleton::Uninitialize();
|
||||
NzPixelFormat::Uninitialize();
|
||||
NzMesh::Uninitialize();
|
||||
NzImage::Uninitialize();
|
||||
NzFont::Uninitialize();
|
||||
NzBuffer::Uninitialize();
|
||||
NzAnimation::Uninitialize();
|
||||
|
||||
NazaraNotice("Uninitialized: Utility module");
|
||||
|
||||
|
||||
@@ -179,6 +179,12 @@ bool NzVertexDeclaration::IsTypeSupported(nzComponentType type)
|
||||
|
||||
bool NzVertexDeclaration::Initialize()
|
||||
{
|
||||
if (!NzVertexDeclarationLibrary::Initialize())
|
||||
{
|
||||
NazaraError("Failed to initialise library");
|
||||
return false;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
NzErrorFlags flags(nzErrorFlag_Silent | nzErrorFlag_ThrowException);
|
||||
@@ -290,7 +296,8 @@ bool NzVertexDeclaration::Initialize()
|
||||
|
||||
void NzVertexDeclaration::Uninitialize()
|
||||
{
|
||||
// Rien à faire
|
||||
NzVertexDeclarationLibrary::Uninitialize();
|
||||
}
|
||||
|
||||
NzVertexDeclaration NzVertexDeclaration::s_declarations[nzVertexLayout_Max+1];
|
||||
NzVertexDeclarationLibrary::LibraryMap NzVertexDeclaration::s_library;
|
||||
|
||||
Reference in New Issue
Block a user