From f9f3df69de9ace6a4ffbec6b9a335f3d41994e5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Fri, 25 Jan 2019 19:35:50 +0100 Subject: [PATCH] Get rid of std::unique_ptr. --- doc/changelog.dox | 12 +++ doc/generated/primitives.cpp | 2 +- doc/generated/shaders.cpp | 4 +- doc/snippets/MagnumText.cpp | 6 +- doc/snippets/MagnumTrade.cpp | 16 ++-- doc/snippets/debugtools-compareimage.cpp | 4 +- doc/snippets/plugins.cpp | 6 +- src/Magnum/DebugTools/CompareImage.cpp | 6 +- src/Magnum/DebugTools/CompareImage.h | 4 +- src/Magnum/GL/Implementation/State.h | 24 +++--- src/Magnum/MeshTools/Compile.h | 2 +- src/Magnum/Platform/AbstractXApplication.h | 6 +- src/Magnum/Platform/AndroidApplication.cpp | 8 +- src/Magnum/Platform/AndroidApplication.h | 12 +-- src/Magnum/Platform/GlfwApplication.h | 4 +- src/Magnum/Platform/GlutApplication.h | 4 +- src/Magnum/Platform/Sdl2Application.h | 5 +- .../Platform/WindowlessCglApplication.h | 4 +- .../Platform/WindowlessEglApplication.h | 6 +- .../Platform/WindowlessGlxApplication.h | 4 +- .../Platform/WindowlessIosApplication.h | 4 +- .../Platform/WindowlessWglApplication.h | 4 +- .../WindowlessWindowsEglApplication.h | 4 +- src/Magnum/SceneGraph/Test/ObjectTest.cpp | 10 +-- src/Magnum/Text/AbstractFont.cpp | 6 +- src/Magnum/Text/AbstractFont.h | 9 +-- src/Magnum/Text/AbstractFontConverter.cpp | 12 +-- src/Magnum/Text/AbstractFontConverter.h | 13 ++- src/Magnum/Text/Renderer.cpp | 2 +- .../Text/Test/AbstractFontConverterTest.cpp | 8 +- src/Magnum/Text/Test/AbstractFontTest.cpp | 2 +- src/Magnum/Text/Test/RendererGLTest.cpp | 8 +- src/Magnum/Text/fontconverter.cpp | 6 +- src/Magnum/TextureTools/DistanceField.h | 6 +- .../TextureTools/Test/DistanceFieldGLTest.cpp | 4 +- .../TextureTools/distancefieldconverter.cpp | 4 +- src/Magnum/Trade/AbstractImporter.cpp | 12 +-- src/Magnum/Trade/AbstractImporter.h | 20 ++--- .../Trade/Test/AbstractImporterTest.cpp | 12 +-- src/Magnum/Trade/imageconverter.cpp | 4 +- .../AnyAudioImporter/AnyImporter.cpp | 2 +- .../AnyAudioImporter/AnyImporter.h | 4 +- .../Test/AnyAudioImporterTest.cpp | 4 +- .../Test/AnyImageConverterTest.cpp | 4 +- .../AnyImageImporter/AnyImageImporter.cpp | 4 +- .../AnyImageImporter/AnyImageImporter.h | 2 +- .../Test/AnyImageImporterTest.cpp | 10 +-- .../AnySceneImporter/AnySceneImporter.cpp | 8 +- .../AnySceneImporter/AnySceneImporter.h | 8 +- .../Test/AnySceneImporterTest.cpp | 4 +- src/MagnumPlugins/MagnumFont/MagnumFont.cpp | 8 +- src/MagnumPlugins/MagnumFont/MagnumFont.h | 4 +- .../MagnumFont/Test/MagnumFontGLTest.cpp | 10 +-- .../Test/MagnumFontConverterGLTest.cpp | 6 +- src/MagnumPlugins/ObjImporter/ObjImporter.cpp | 4 +- src/MagnumPlugins/ObjImporter/ObjImporter.h | 2 +- .../ObjImporter/Test/ObjImporterTest.cpp | 80 +++++++++---------- .../Test/TgaImageConverterTest.cpp | 10 +-- .../TgaImporter/Test/TgaImporterTest.cpp | 18 ++--- .../WavAudioImporter/Test/WavImporterTest.cpp | 54 ++++++------- 60 files changed, 272 insertions(+), 263 deletions(-) diff --git a/doc/changelog.dox b/doc/changelog.dox index b35fa1b28..c4e5148db 100644 --- a/doc/changelog.dox +++ b/doc/changelog.dox @@ -123,6 +123,12 @@ See also: @ref Platform::Sdl2Application::redraw() "redraw()" were changed from protected to public to allow calling them from outside +@subsubsection changelog-latest-changes-text Text library + +- The @ref Text::AbstractFont and @ref Text::AbstractFontConverter plugin + APIs now return @ref Corrade::Containers::Pointer instead of + @ref std::unique_ptr for improved compile times + @subsubsection changelog-latest-changes-texturetools TextureTools library - Further performance and output quality improvements for @@ -131,6 +137,12 @@ See also: compared to before. It's now also possible to reuse the internal state for batch processing. +@subsubsection changelog-latest-changes-trade Trade library + +- The @ref Trade::AbstractImporter plugin API now returns + @ref Corrade::Containers::Pointer instead of @ref std::unique_ptr for + improved compile times + @subsection changelog-latest-buildsystem Build system - Experimental support for creating Android APKs directly using CMake without diff --git a/doc/generated/primitives.cpp b/doc/generated/primitives.cpp index 124525d1c..ceba05712 100644 --- a/doc/generated/primitives.cpp +++ b/doc/generated/primitives.cpp @@ -144,7 +144,7 @@ namespace { int PrimitiveVisualizer::exec() { PluginManager::Manager converterManager; - std::unique_ptr converter = converterManager.loadAndInstantiate("PngImageConverter"); + Containers::Pointer converter = converterManager.loadAndInstantiate("PngImageConverter"); if(!converter) { Error() << "Cannot load image converter plugin"; std::exit(1); diff --git a/doc/generated/shaders.cpp b/doc/generated/shaders.cpp index f42763901..d0437dffd 100644 --- a/doc/generated/shaders.cpp +++ b/doc/generated/shaders.cpp @@ -81,7 +81,7 @@ struct ShaderVisualizer: Platform::WindowlessApplication { std::string vector(); std::string distanceFieldVector(); - std::unique_ptr _importer; + Containers::Pointer _importer; }; namespace { @@ -90,7 +90,7 @@ namespace { int ShaderVisualizer::exec() { PluginManager::Manager converterManager; - std::unique_ptr converter = converterManager.loadAndInstantiate("PngImageConverter"); + Containers::Pointer converter = converterManager.loadAndInstantiate("PngImageConverter"); if(!converter) { Error() << "Cannot load image converter plugin"; std::exit(1); diff --git a/doc/snippets/MagnumText.cpp b/doc/snippets/MagnumText.cpp index ee26f71f7..8e06fc320 100644 --- a/doc/snippets/MagnumText.cpp +++ b/doc/snippets/MagnumText.cpp @@ -35,7 +35,7 @@ int main() { { /* [DistanceFieldGlyphCache-usage] */ -std::unique_ptr font; +Containers::Pointer font; Text::DistanceFieldGlyphCache cache{Vector2i{2048}, Vector2i{384}, 16}; font->fillGlyphCache(cache, "abcdefghijklmnopqrstuvwxyz" "ABCDEFGHIJKLMNOPQRSTUVWXYZ" @@ -45,7 +45,7 @@ font->fillGlyphCache(cache, "abcdefghijklmnopqrstuvwxyz" { /* [GlyphCache-usage] */ -std::unique_ptr font; +Containers::Pointer font; Text::GlyphCache cache{Vector2i{512}}; font->fillGlyphCache(cache, "abcdefghijklmnopqrstuvwxyz" "ABCDEFGHIJKLMNOPQRSTUVWXYZ" @@ -57,7 +57,7 @@ font->fillGlyphCache(cache, "abcdefghijklmnopqrstuvwxyz" Matrix3 projectionMatrix; /* [Renderer-usage1] */ /* Font instance, received from a plugin manager */ -std::unique_ptr font; +Containers::Pointer font; /* Configured glyph cache */ Text::GlyphCache cache{Vector2i{512}}; diff --git a/doc/snippets/MagnumTrade.cpp b/doc/snippets/MagnumTrade.cpp index f4855c552..628212b15 100644 --- a/doc/snippets/MagnumTrade.cpp +++ b/doc/snippets/MagnumTrade.cpp @@ -50,7 +50,7 @@ int main() { { /* [AbstractImporter-usage] */ PluginManager::Manager manager; -std::unique_ptr importer = +Containers::Pointer importer = manager.loadAndInstantiate("AnyImageImporter"); if(!importer || !importer->openFile("image.png")) Fatal{} << "Can't open image.png with AnyImageImporter"; @@ -64,7 +64,7 @@ if(!image) Fatal{} << "Importing the image failed"; #if defined(CORRADE_TARGET_UNIX) || (defined(CORRADE_TARGET_WINDOWS) && !defined(CORRADE_TARGET_WINDOWS_RT)) { -std::unique_ptr importer; +Containers::Pointer importer; /* [AbstractImporter-usage-callbacks] */ struct Data { std::unordered_mapopenFile("scene.gltf"); // memory-maps all files #endif { -std::unique_ptr importer; +Containers::Pointer importer; Float shininess; /* [AbstractImporter-usage-cast] */ -std::unique_ptr data = importer->material(12); +Containers::Pointer data = importer->material(12); if(data && data->type() == Trade::MaterialType::Phong) { auto& phong = static_cast(*data); @@ -111,7 +111,7 @@ static_cast(shininess); } { -std::unique_ptr importer; +Containers::Pointer importer; /* [AbstractImporter-setFileCallback] */ importer->setFileCallback([](const std::string& filename, Trade::ImporterFileCallbackPolicy, void*) { @@ -122,7 +122,7 @@ importer->setFileCallback([](const std::string& filename, } { -std::unique_ptr importer; +Containers::Pointer importer; /* [AbstractImporter-setFileCallback-template] */ struct Data { std::unordered_map> files; @@ -145,7 +145,7 @@ importer->setFileCallback([](const std::string& filename, { UnsignedInt id{}; -std::unique_ptr importer; +Containers::Pointer importer; /* [AnimationData-usage] */ Containers::Optional data = importer->animation(id); @@ -184,7 +184,7 @@ Trade::ImageData2D image{CompressedPixelFormat::Bc1RGBUnorm, #ifdef MAGNUM_TARGET_GL { /* [ImageData-usage] */ -std::unique_ptr importer; +Containers::Pointer importer; Containers::Optional image = importer->image2D(0); if(!image) Fatal{} << "Oopsie!"; diff --git a/doc/snippets/debugtools-compareimage.cpp b/doc/snippets/debugtools-compareimage.cpp index 77a9b8065..cc2a6bb7f 100644 --- a/doc/snippets/debugtools-compareimage.cpp +++ b/doc/snippets/debugtools-compareimage.cpp @@ -41,7 +41,7 @@ namespace { Image2D doProcessing() { PluginManager::Manager manager{MAGNUM_PLUGINS_IMPORTER_DIR}; - std::unique_ptr importer = manager.loadAndInstantiate("TgaImporter"); + Containers::Pointer importer = manager.loadAndInstantiate("TgaImporter"); importer->openFile(Utility::Directory::join(SNIPPETS_DIR, "image2.tga")); auto image = importer->image2D(0); CORRADE_INTERNAL_ASSERT(image); @@ -50,7 +50,7 @@ Image2D doProcessing() { Image2D loadExpectedImage() { PluginManager::Manager manager{MAGNUM_PLUGINS_IMPORTER_DIR}; - std::unique_ptr importer = manager.loadAndInstantiate("TgaImporter"); + Containers::Pointer importer = manager.loadAndInstantiate("TgaImporter"); importer->openFile(Utility::Directory::join(SNIPPETS_DIR, "image1.tga")); auto image = importer->image2D(0); CORRADE_INTERNAL_ASSERT(image); diff --git a/doc/snippets/plugins.cpp b/doc/snippets/plugins.cpp index 318e0583d..bcd8e3754 100644 --- a/doc/snippets/plugins.cpp +++ b/doc/snippets/plugins.cpp @@ -22,7 +22,7 @@ int main() { /* [loading] */ { PluginManager::Manager manager; - std::unique_ptr importer = + Containers::Pointer importer = manager.loadAndInstantiate("TgaImporter"); if(!importer) Fatal{} << "Cannot load the TgaImporter plugin"; @@ -53,7 +53,7 @@ manager.setPreferredPlugins("TrueTypeFont", {"HarfBuzzFont", "FreeTypeFont"}); { PluginManager::Manager manager; /* [anyimporter] */ -std::unique_ptr importer = +Containers::Pointer importer = manager.instantiate("AnyImageImporter"); importer->openFile("texture.dds"); /* Delegates to the DdsImporter plugin */ /* [anyimporter] */ @@ -62,7 +62,7 @@ importer->openFile("texture.dds"); /* Delegates to the DdsImporter plugin */ { PluginManager::Manager manager; /* [configuration] */ -std::unique_ptr importer = +Containers::Pointer importer = manager.instantiate("AssimpImporter"); importer->configuration().group("postprocess")->setValue("PreTransformVertices", true); /* [configuration] */ diff --git a/src/Magnum/DebugTools/CompareImage.cpp b/src/Magnum/DebugTools/CompareImage.cpp index ceb833dc1..14c2a44df 100644 --- a/src/Magnum/DebugTools/CompareImage.cpp +++ b/src/Magnum/DebugTools/CompareImage.cpp @@ -485,7 +485,7 @@ bool ImageComparatorBase::operator()(const std::string& actual, const std::strin _fileState->actualFilename = actual; _fileState->expectedFilename = expected; - std::unique_ptr importer; + Containers::Pointer importer; if(!(importer = _fileState->manager->loadAndInstantiate("AnyImageImporter"))) { _state = State::PluginLoadFailed; return false; @@ -521,7 +521,7 @@ bool ImageComparatorBase::operator()(const ImageView2D& actual, const std::strin _fileState->expectedFilename = expected; - std::unique_ptr importer; + Containers::Pointer importer; if(!(importer = _fileState->manager->loadAndInstantiate("AnyImageImporter"))) { _state = State::PluginLoadFailed; return false; @@ -546,7 +546,7 @@ bool ImageComparatorBase::operator()(const std::string& actual, const ImageView2 _fileState->actualFilename = actual; - std::unique_ptr importer; + Containers::Pointer importer; if(!(importer = _fileState->manager->loadAndInstantiate("AnyImageImporter"))) { _state = State::PluginLoadFailed; return false; diff --git a/src/Magnum/DebugTools/CompareImage.h b/src/Magnum/DebugTools/CompareImage.h index cc01374a7..517f4e944 100644 --- a/src/Magnum/DebugTools/CompareImage.h +++ b/src/Magnum/DebugTools/CompareImage.h @@ -29,8 +29,8 @@ * @brief Class @ref Magnum::DebugTools::CompareImage */ -#include #include +#include #include #include @@ -80,7 +80,7 @@ class MAGNUM_DEBUGTOOLS_EXPORT ImageComparatorBase { enum class State: UnsignedByte; - std::unique_ptr _fileState; + Containers::Pointer _fileState; Float _maxThreshold, _meanThreshold; State _state{}; diff --git a/src/Magnum/GL/Implementation/State.h b/src/Magnum/GL/Implementation/State.h index 3068ad88a..240e3cbe1 100644 --- a/src/Magnum/GL/Implementation/State.h +++ b/src/Magnum/GL/Implementation/State.h @@ -25,7 +25,7 @@ DEALINGS IN THE SOFTWARE. */ -#include +#include #include "Magnum/Magnum.h" #include "Magnum/GL/GL.h" @@ -58,22 +58,22 @@ struct State { enum: GLuint { DisengagedBinding = ~0u }; - std::unique_ptr buffer; - std::unique_ptr context; + Containers::Pointer buffer; + Containers::Pointer context; #ifndef MAGNUM_TARGET_WEBGL - std::unique_ptr debug; + Containers::Pointer debug; #endif - std::unique_ptr framebuffer; - std::unique_ptr mesh; + Containers::Pointer framebuffer; + Containers::Pointer mesh; #if !(defined(MAGNUM_TARGET_WEBGL) && defined(MAGNUM_TARGET_GLES2)) - std::unique_ptr query; + Containers::Pointer query; #endif - std::unique_ptr renderer; - std::unique_ptr shader; - std::unique_ptr shaderProgram; - std::unique_ptr texture; + Containers::Pointer renderer; + Containers::Pointer shader; + Containers::Pointer shaderProgram; + Containers::Pointer texture; #ifndef MAGNUM_TARGET_GLES2 - std::unique_ptr transformFeedback; + Containers::Pointer transformFeedback; #endif }; diff --git a/src/Magnum/MeshTools/Compile.h b/src/Magnum/MeshTools/Compile.h index ae4e20318..5221ab634 100644 --- a/src/Magnum/MeshTools/Compile.h +++ b/src/Magnum/MeshTools/Compile.h @@ -38,7 +38,7 @@ #ifdef MAGNUM_BUILD_DEPRECATED #include -#include +#include /* deliberately kept here */ #include #endif diff --git a/src/Magnum/Platform/AbstractXApplication.h b/src/Magnum/Platform/AbstractXApplication.h index 35659563c..95c79f11d 100644 --- a/src/Magnum/Platform/AbstractXApplication.h +++ b/src/Magnum/Platform/AbstractXApplication.h @@ -29,8 +29,8 @@ * @brief Class @ref Magnum::Platform::AbstractXApplication */ -#include #include +#include #include #include @@ -280,8 +280,8 @@ class AbstractXApplication { Window _window{}; Atom _deleteWindow{}; - std::unique_ptr> _contextHandler; - std::unique_ptr _context; + Containers::Pointer> _contextHandler; + Containers::Pointer _context; /** @todo Get this from the created window */ Vector2i _windowSize; diff --git a/src/Magnum/Platform/AndroidApplication.cpp b/src/Magnum/Platform/AndroidApplication.cpp index 6cc45e2e6..d98441b59 100644 --- a/src/Magnum/Platform/AndroidApplication.cpp +++ b/src/Magnum/Platform/AndroidApplication.cpp @@ -194,10 +194,10 @@ void AndroidApplication::mouseMoveEvent(MouseMoveEvent&) {} namespace { struct Data { - Data(std::unique_ptr(*instancer)(const AndroidApplication::Arguments&), void(*nativeActivity)(ANativeActivity*,void*,size_t)): instancer(instancer), nativeActivity{nativeActivity} {} + Data(Containers::Pointer(*instancer)(const AndroidApplication::Arguments&), void(*nativeActivity)(ANativeActivity*,void*,size_t)): instancer(instancer), nativeActivity{nativeActivity} {} - std::unique_ptr(*instancer)(const AndroidApplication::Arguments&); - std::unique_ptr instance; + Containers::Pointer(*instancer)(const AndroidApplication::Arguments&); + Containers::Pointer instance; void(*nativeActivity)(ANativeActivity*,void*,size_t); }; @@ -270,7 +270,7 @@ std::int32_t AndroidApplication::inputEvent(android_app* state, AInputEvent* eve AndroidApplication::GLConfiguration::GLConfiguration(): _colorBufferSize{8, 8, 8, 0}, _depthBufferSize{24}, _stencilBufferSize{0} {} -void AndroidApplication::exec(android_app* state, std::unique_ptr(*instancer)(const Arguments&)) { +void AndroidApplication::exec(android_app* state, Containers::Pointer(*instancer)(const Arguments&)) { state->onAppCmd = commandEvent; state->onInputEvent = inputEvent; diff --git a/src/Magnum/Platform/AndroidApplication.h b/src/Magnum/Platform/AndroidApplication.h index a31ca8688..49e640860 100644 --- a/src/Magnum/Platform/AndroidApplication.h +++ b/src/Magnum/Platform/AndroidApplication.h @@ -31,8 +31,8 @@ */ #endif -#include #include +#include #include "Magnum/Magnum.h" #include "Magnum/Tags.h" @@ -162,11 +162,11 @@ class AndroidApplication { * * See @ref MAGNUM_ANDROIDAPPLICATION_MAIN() for usage information. */ - static void exec(android_app* state, std::unique_ptr(*instancer)(const Arguments&)); + static void exec(android_app* state, Containers::Pointer(*instancer)(const Arguments&)); #ifndef DOXYGEN_GENERATING_OUTPUT - template static std::unique_ptr instancer(const Arguments& arguments) { - return std::unique_ptr{new T{arguments}}; + template static Containers::Pointer instancer(const Arguments& arguments) { + return Containers::Pointer{new T{arguments}}; } #endif @@ -450,8 +450,8 @@ class AndroidApplication { EGLSurface _surface; EGLContext _glContext; - std::unique_ptr _context; - std::unique_ptr _logOutput; + Containers::Pointer _context; + Containers::Pointer _logOutput; CORRADE_ENUMSET_FRIEND_OPERATORS(Flags) }; diff --git a/src/Magnum/Platform/GlfwApplication.h b/src/Magnum/Platform/GlfwApplication.h index 7a2210faf..ef2e67e61 100644 --- a/src/Magnum/Platform/GlfwApplication.h +++ b/src/Magnum/Platform/GlfwApplication.h @@ -30,10 +30,10 @@ * @brief Class @ref Magnum::Platform::GlfwApplication, macro @ref MAGNUM_GLFWAPPLICATION_MAIN() */ -#include #include #include #include +#include #include "Magnum/Magnum.h" #include "Magnum/Tags.h" @@ -572,7 +572,7 @@ class GlfwApplication { GLFWwindow* _window{nullptr}; Flags _flags; #ifdef MAGNUM_TARGET_GL - std::unique_ptr _context; + Containers::Pointer _context; #endif }; diff --git a/src/Magnum/Platform/GlutApplication.h b/src/Magnum/Platform/GlutApplication.h index ddecf69a7..4cacc72c0 100644 --- a/src/Magnum/Platform/GlutApplication.h +++ b/src/Magnum/Platform/GlutApplication.h @@ -34,8 +34,8 @@ as soon as possible. */ -#include #include +#include #include "Magnum/Magnum.h" #include "Magnum/Tags.h" @@ -406,7 +406,7 @@ class CORRADE_DEPRECATED("scheduled for removal, consider switching to Sdl2Appli static GlutApplication* _instance; - std::unique_ptr _context; + Containers::Pointer _context; }; /** diff --git a/src/Magnum/Platform/Sdl2Application.h b/src/Magnum/Platform/Sdl2Application.h index 9c10d8b13..1a50b1c72 100644 --- a/src/Magnum/Platform/Sdl2Application.h +++ b/src/Magnum/Platform/Sdl2Application.h @@ -29,10 +29,9 @@ * @brief Class @ref Magnum::Platform::Sdl2Application, macro @ref MAGNUM_SDL2APPLICATION_MAIN() */ -#include -#include #include #include +#include #include "Magnum/Magnum.h" #include "Magnum/Tags.h" @@ -1005,7 +1004,7 @@ class Sdl2Application { #else SDL_Surface* _glContext{}; #endif - std::unique_ptr _context; + Containers::Pointer _context; #endif Flags _flags; diff --git a/src/Magnum/Platform/WindowlessCglApplication.h b/src/Magnum/Platform/WindowlessCglApplication.h index 7f6cdd52c..976639c1d 100644 --- a/src/Magnum/Platform/WindowlessCglApplication.h +++ b/src/Magnum/Platform/WindowlessCglApplication.h @@ -31,7 +31,7 @@ * @brief Class @ref Magnum::Platform::WindowlessCglApplication, @ref Magnum::Platform::WindowlessCglContext, macro @ref MAGNUM_WINDOWLESSCGLAPPLICATION_MAIN() */ -#include +#include #include "Magnum/Magnum.h" #include "Magnum/Tags.h" @@ -295,7 +295,7 @@ class WindowlessCglApplication { private: WindowlessCglContext _glContext; - std::unique_ptr _context; + Containers::Pointer _context; }; /** @hideinitializer diff --git a/src/Magnum/Platform/WindowlessEglApplication.h b/src/Magnum/Platform/WindowlessEglApplication.h index 83082537f..5618f9450 100644 --- a/src/Magnum/Platform/WindowlessEglApplication.h +++ b/src/Magnum/Platform/WindowlessEglApplication.h @@ -29,15 +29,15 @@ * @brief Class @ref Magnum::Platform::WindowlessEglApplication, @ref Magnum::Platform::WindowlessEglContext, macro @ref MAGNUM_WINDOWLESSEGLAPPLICATION_MAIN() */ -#include #include #include -#include /* undef Xlib nonsense to avoid conflicts */ #undef Always #undef Complex #undef None #undef Status +#include +#include #include "Magnum/Magnum.h" #include "Magnum/GL/OpenGL.h" @@ -434,7 +434,7 @@ class WindowlessEglApplication { private: WindowlessEglContext _glContext; - std::unique_ptr _context; + Containers::Pointer _context; }; /** @hideinitializer diff --git a/src/Magnum/Platform/WindowlessGlxApplication.h b/src/Magnum/Platform/WindowlessGlxApplication.h index 1c03ca2a6..5217615b3 100644 --- a/src/Magnum/Platform/WindowlessGlxApplication.h +++ b/src/Magnum/Platform/WindowlessGlxApplication.h @@ -29,8 +29,8 @@ * @brief Class @ref Magnum::Platform::WindowlessGlxApplication, @ref Magnum::Platform::WindowlessGlxContext, macro @ref MAGNUM_WINDOWLESSGLXAPPLICATION_MAIN() */ -#include #include +#include /* Include our GL headers first to avoid conflicts */ #include "Magnum/Magnum.h" @@ -390,7 +390,7 @@ class WindowlessGlxApplication { private: WindowlessGlxContext _glContext; - std::unique_ptr _context; + Containers::Pointer _context; }; /** @hideinitializer diff --git a/src/Magnum/Platform/WindowlessIosApplication.h b/src/Magnum/Platform/WindowlessIosApplication.h index e391e99c5..41295c9fb 100644 --- a/src/Magnum/Platform/WindowlessIosApplication.h +++ b/src/Magnum/Platform/WindowlessIosApplication.h @@ -29,8 +29,8 @@ * @brief Class @ref Magnum::Platform::WindowlessIosApplication, @ref Magnum::Platform::WindowlessIosContext, macro @ref MAGNUM_WINDOWLESSIOSAPPLICATION_MAIN() */ -#include #include +#include #include "Magnum/Magnum.h" #include "Magnum/Tags.h" @@ -293,7 +293,7 @@ class WindowlessIosApplication { private: WindowlessIosContext _glContext; - std::unique_ptr _context; + Containers::Pointer _context; }; /** @hideinitializer diff --git a/src/Magnum/Platform/WindowlessWglApplication.h b/src/Magnum/Platform/WindowlessWglApplication.h index b1f82f6c4..3484759c5 100644 --- a/src/Magnum/Platform/WindowlessWglApplication.h +++ b/src/Magnum/Platform/WindowlessWglApplication.h @@ -29,13 +29,13 @@ * @brief Class @ref Magnum::Platform::WindowlessWglApplication, @ref Magnum::Platform::WindowlessWglContext, macro @ref MAGNUM_WINDOWLESSWGLAPPLICATION_MAIN() */ -#include #ifndef DOXYGEN_GENERATING_OUTPUT #define WIN32_LEAN_AND_MEAN 1 #define VC_EXTRALEAN #endif #include #include +#include #include "Magnum/Magnum.h" #include "Magnum/Tags.h" @@ -388,7 +388,7 @@ class WindowlessWglApplication { private: WindowlessWglContext _glContext; - std::unique_ptr _context; + Containers::Pointer _context; }; /** @hideinitializer diff --git a/src/Magnum/Platform/WindowlessWindowsEglApplication.h b/src/Magnum/Platform/WindowlessWindowsEglApplication.h index 76d859dc9..b49de67f1 100644 --- a/src/Magnum/Platform/WindowlessWindowsEglApplication.h +++ b/src/Magnum/Platform/WindowlessWindowsEglApplication.h @@ -29,7 +29,6 @@ * @brief Class @ref Magnum::Platform::WindowlessWindowsEglApplication, @ref Magnum::Platform::WindowlessWindowsEglContext, macro @ref MAGNUM_WINDOWLESSWINDOWSEGLAPPLICATION_MAIN() */ -#include #ifndef DOXYGEN_GENERATING_OUTPUT #define WIN32_LEAN_AND_MEAN 1 #define VC_EXTRALEAN @@ -38,6 +37,7 @@ #include #include #include +#include #include "Magnum/Magnum.h" #include "Magnum/Tags.h" @@ -359,7 +359,7 @@ class WindowlessWindowsEglApplication { private: WindowlessWindowsEglContext _glContext; - std::unique_ptr _context; + Containers::Pointer _context; }; /** @hideinitializer diff --git a/src/Magnum/SceneGraph/Test/ObjectTest.cpp b/src/Magnum/SceneGraph/Test/ObjectTest.cpp index fea60bcd9..8b27529d2 100644 --- a/src/Magnum/SceneGraph/Test/ObjectTest.cpp +++ b/src/Magnum/SceneGraph/Test/ObjectTest.cpp @@ -23,8 +23,8 @@ DEALINGS IN THE SOFTWARE. */ -#include #include +#include #include #include "Magnum/SceneGraph/MatrixTransformation3D.h" @@ -94,14 +94,14 @@ ObjectTest::ObjectTest() { void ObjectTest::addFeature() { class MyFeature: public AbstractFeature3D { public: - explicit MyFeature(AbstractObject3D& object, Int&, std::unique_ptr&&): AbstractFeature3D{object} {} + explicit MyFeature(AbstractObject3D& object, Int&, Containers::Pointer&&): AbstractFeature3D{object} {} }; Object3D o; CORRADE_VERIFY(o.features().isEmpty()); /* Test perfect forwarding as well */ int a = 0; - MyFeature& f = o.addFeature(a, std::unique_ptr{}); + MyFeature& f = o.addFeature(a, Containers::Pointer{}); CORRADE_VERIFY(!o.features().isEmpty()); CORRADE_COMPARE(&f.object(), &o); } @@ -139,14 +139,14 @@ void ObjectTest::parenting() { void ObjectTest::addChild() { class MyObject: public Object3D { public: - explicit MyObject(Int&, std::unique_ptr&&, Object3D* parent = nullptr): Object3D{parent} {} + explicit MyObject(Int&, Containers::Pointer&&, Object3D* parent = nullptr): Object3D{parent} {} }; Object3D o; CORRADE_VERIFY(o.children().isEmpty()); /* Test perfect forwarding as well */ int a = 0; - MyObject& p = o.addChild(a, std::unique_ptr{}); + MyObject& p = o.addChild(a, Containers::Pointer{}); CORRADE_VERIFY(!o.children().isEmpty()); CORRADE_COMPARE(p.parent(), &o); } diff --git a/src/Magnum/Text/AbstractFont.cpp b/src/Magnum/Text/AbstractFont.cpp index 8a5d7d88a..50fe40790 100644 --- a/src/Magnum/Text/AbstractFont.cpp +++ b/src/Magnum/Text/AbstractFont.cpp @@ -165,7 +165,7 @@ void AbstractFont::doFillGlyphCache(GlyphCache&, const std::u32string&) { CORRADE_ASSERT(false, "Text::AbstractFont::fillGlyphCache(): feature advertised but not implemented", ); } -std::unique_ptr AbstractFont::createGlyphCache() { +Containers::Pointer AbstractFont::createGlyphCache() { CORRADE_ASSERT(isOpened(), "Text::AbstractFont::createGlyphCache(): no font opened", nullptr); CORRADE_ASSERT(features() & Feature::PreparedGlyphCache, @@ -174,12 +174,12 @@ std::unique_ptr AbstractFont::createGlyphCache() { return doCreateGlyphCache(); } -std::unique_ptr AbstractFont::doCreateGlyphCache() { +Containers::Pointer AbstractFont::doCreateGlyphCache() { CORRADE_ASSERT(false, "Text::AbstractFont::createGlyphCache(): feature advertised but not implemented", nullptr); return nullptr; } -std::unique_ptr AbstractFont::layout(const GlyphCache& cache, const Float size, const std::string& text) { +Containers::Pointer AbstractFont::layout(const GlyphCache& cache, const Float size, const std::string& text) { CORRADE_ASSERT(isOpened(), "Text::AbstractFont::layout(): no font opened", nullptr); return doLayout(cache, size, text); diff --git a/src/Magnum/Text/AbstractFont.h b/src/Magnum/Text/AbstractFont.h index 5923fd3bc..1c88339bc 100644 --- a/src/Magnum/Text/AbstractFont.h +++ b/src/Magnum/Text/AbstractFont.h @@ -29,7 +29,6 @@ * @brief Class @ref Magnum::Text::AbstractFont, @ref Magnum::Text::AbstractLayouter */ -#include #include #include #include @@ -251,7 +250,7 @@ class MAGNUM_TEXT_EXPORT AbstractFont: public PluginManager::AbstractPlugin { * Other fonts support only partial glyph cache filling, see * @ref fillGlyphCache(). */ - std::unique_ptr createGlyphCache(); + Containers::Pointer createGlyphCache(); /** * @brief Layout the text using font's own layouter @@ -263,7 +262,7 @@ class MAGNUM_TEXT_EXPORT AbstractFont: public PluginManager::AbstractPlugin { * See @ref Renderer class for more advanced text layouting. * @see @ref fillGlyphCache(), @ref createGlyphCache() */ - std::unique_ptr layout(const GlyphCache& cache, Float size, const std::string& text); + Containers::Pointer layout(const GlyphCache& cache, Float size, const std::string& text); protected: /** @@ -349,10 +348,10 @@ class MAGNUM_TEXT_EXPORT AbstractFont: public PluginManager::AbstractPlugin { virtual void doFillGlyphCache(GlyphCache& cache, const std::u32string& characters); /** @brief Implementation for @ref createGlyphCache() */ - virtual std::unique_ptr doCreateGlyphCache(); + virtual Containers::Pointer doCreateGlyphCache(); /** @brief Implementation for @ref layout() */ - virtual std::unique_ptr doLayout(const GlyphCache& cache, Float size, const std::string& text) = 0; + virtual Containers::Pointer doLayout(const GlyphCache& cache, Float size, const std::string& text) = 0; #ifdef DOXYGEN_GENERATING_OUTPUT private: diff --git a/src/Magnum/Text/AbstractFontConverter.cpp b/src/Magnum/Text/AbstractFontConverter.cpp index f967f7f31..10686dac9 100644 --- a/src/Magnum/Text/AbstractFontConverter.cpp +++ b/src/Magnum/Text/AbstractFontConverter.cpp @@ -181,7 +181,7 @@ bool AbstractFontConverter::doExportGlyphCacheToFile(GlyphCache& cache, const st return true; } -std::unique_ptr AbstractFontConverter::importGlyphCacheFromData(const std::vector>>& data) const { +Containers::Pointer AbstractFontConverter::importGlyphCacheFromData(const std::vector>>& data) const { CORRADE_ASSERT(features() >= (Feature::ImportGlyphCache|Feature::ConvertData), "Text::AbstractFontConverter::importGlyphCacheFromData(): feature not supported", nullptr); CORRADE_ASSERT(!data.empty(), @@ -190,7 +190,7 @@ std::unique_ptr AbstractFontConverter::importGlyphCacheFromData(cons return doImportGlyphCacheFromData(data); } -std::unique_ptr AbstractFontConverter::doImportGlyphCacheFromData(const std::vector>>& data) const { +Containers::Pointer AbstractFontConverter::doImportGlyphCacheFromData(const std::vector>>& data) const { CORRADE_ASSERT(!(features() & Feature::MultiFile), "Text::AbstractFontConverter::importGlyphCacheFromData(): feature advertised but not implemented", nullptr); CORRADE_ASSERT(data.size() == 1, @@ -199,7 +199,7 @@ std::unique_ptr AbstractFontConverter::doImportGlyphCacheFromData(co return doImportGlyphCacheFromSingleData(data[0].second); } -std::unique_ptr AbstractFontConverter::importGlyphCacheFromSingleData(Containers::ArrayView data) const { +Containers::Pointer AbstractFontConverter::importGlyphCacheFromSingleData(Containers::ArrayView data) const { CORRADE_ASSERT(features() >= (Feature::ImportGlyphCache|Feature::ConvertData), "Text::AbstractFontConverter::importGlyphCacheFromSingleData(): feature not supported", nullptr); CORRADE_ASSERT(!(features() & Feature::MultiFile), @@ -208,20 +208,20 @@ std::unique_ptr AbstractFontConverter::importGlyphCacheFromSingleDat return doImportGlyphCacheFromSingleData(data); } -std::unique_ptr AbstractFontConverter::doImportGlyphCacheFromSingleData(Containers::ArrayView) const { +Containers::Pointer AbstractFontConverter::doImportGlyphCacheFromSingleData(Containers::ArrayView) const { CORRADE_ASSERT(false, "Text::AbstractFontConverter::importGlyphCacheFromSingleData(): feature advertised but not implemented", nullptr); return nullptr; } -std::unique_ptr AbstractFontConverter::importGlyphCacheFromFile(const std::string& filename) const { +Containers::Pointer AbstractFontConverter::importGlyphCacheFromFile(const std::string& filename) const { CORRADE_ASSERT(features() & Feature::ImportGlyphCache, "Text::AbstractFontConverter::importGlyphCacheFromFile(): feature not supported", nullptr); return doImportGlyphCacheFromFile(filename); } -std::unique_ptr AbstractFontConverter::doImportGlyphCacheFromFile(const std::string& filename) const { +Containers::Pointer AbstractFontConverter::doImportGlyphCacheFromFile(const std::string& filename) const { CORRADE_ASSERT(features() & Feature::ConvertData && !(features() & Feature::MultiFile), "Text::AbstractFontConverter::importGlyphCacheFromFile(): not implemented", nullptr); diff --git a/src/Magnum/Text/AbstractFontConverter.h b/src/Magnum/Text/AbstractFontConverter.h index d2b9f752e..f86515fc6 100644 --- a/src/Magnum/Text/AbstractFontConverter.h +++ b/src/Magnum/Text/AbstractFontConverter.h @@ -29,7 +29,6 @@ * @brief Class @ref Magnum::Text::AbstractFontConverter */ -#include #include #include #include @@ -262,7 +261,7 @@ class MAGNUM_TEXT_EXPORT AbstractFontConverter: public PluginManager::AbstractPl * @see @ref features(), @ref importGlyphCacheFromFile(), * @ref exportGlyphCacheToData() */ - std::unique_ptr importGlyphCacheFromData(const std::vector>>& data) const; + Containers::Pointer importGlyphCacheFromData(const std::vector>>& data) const; /** * @brief Import glyph cache from single raw data @@ -274,7 +273,7 @@ class MAGNUM_TEXT_EXPORT AbstractFontConverter: public PluginManager::AbstractPl * @see @ref features(), @ref importGlyphCacheFromFile(), * @ref exportFontToSingleData() */ - std::unique_ptr importGlyphCacheFromSingleData(Containers::ArrayView data) const; + Containers::Pointer importGlyphCacheFromSingleData(Containers::ArrayView data) const; /** * @brief Import glyph cache from file @@ -287,7 +286,7 @@ class MAGNUM_TEXT_EXPORT AbstractFontConverter: public PluginManager::AbstractPl * @see @ref features(), @ref importGlyphCacheFromData(), * @ref exportGlyphCacheToFile() */ - std::unique_ptr importGlyphCacheFromFile(const std::string& filename) const; + Containers::Pointer importGlyphCacheFromFile(const std::string& filename) const; private: /** @brief Implementation for @ref features() */ @@ -339,10 +338,10 @@ class MAGNUM_TEXT_EXPORT AbstractFontConverter: public PluginManager::AbstractPl * If the plugin doesn't have @ref Feature::MultiFile, default * implementation calls @ref doImportGlyphCacheFromSingleData(). */ - virtual std::unique_ptr doImportGlyphCacheFromData(const std::vector>>& data) const; + virtual Containers::Pointer doImportGlyphCacheFromData(const std::vector>>& data) const; /** @brief Implementation for @ref importGlyphCacheFromSingleData() */ - virtual std::unique_ptr doImportGlyphCacheFromSingleData(Containers::ArrayView data) const; + virtual Containers::Pointer doImportGlyphCacheFromSingleData(Containers::ArrayView data) const; /** * @brief Implementation for @ref importGlyphCacheFromFile() @@ -351,7 +350,7 @@ class MAGNUM_TEXT_EXPORT AbstractFontConverter: public PluginManager::AbstractPl * have @ref Feature::MultiFile, default implementation opens the file * and calls @ref doImportGlyphCacheFromSingleData() with its contents. */ - virtual std::unique_ptr doImportGlyphCacheFromFile(const std::string& filename) const; + virtual Containers::Pointer doImportGlyphCacheFromFile(const std::string& filename) const; }; CORRADE_ENUMSET_OPERATORS(AbstractFontConverter::Features) diff --git a/src/Magnum/Text/Renderer.cpp b/src/Magnum/Text/Renderer.cpp index f689b88b0..7bfb1b56e 100644 --- a/src/Magnum/Text/Renderer.cpp +++ b/src/Magnum/Text/Renderer.cpp @@ -95,7 +95,7 @@ std::tuple, Range2D> renderVerticesInternal(AbstractFont& fo line.assign(text, prevPos, pos-prevPos); /* Layout the line */ - const auto layouter = font.layout(cache, size, line); + Containers::Pointer layouter = font.layout(cache, size, line); /* Verify that we don't reallocate anything. The only problem might arise when the layouter decides to compose one character from more diff --git a/src/Magnum/Text/Test/AbstractFontConverterTest.cpp b/src/Magnum/Text/Test/AbstractFontConverterTest.cpp index 9876320cf..291c80be7 100644 --- a/src/Magnum/Text/Test/AbstractFontConverterTest.cpp +++ b/src/Magnum/Text/Test/AbstractFontConverterTest.cpp @@ -198,9 +198,9 @@ class SingleGlyphCacheDataImporter: public Text::AbstractFontConverter { private: Features doFeatures() const override { return Feature::ConvertData|Feature::ImportGlyphCache; } - std::unique_ptr doImportGlyphCacheFromSingleData(const Containers::ArrayView data) const override { + Containers::Pointer doImportGlyphCacheFromSingleData(const Containers::ArrayView data) const override { if(data.size() == 1 && data[0] == '\xa5') - return std::unique_ptr(reinterpret_cast(0xdeadbeef)); + return Containers::Pointer(reinterpret_cast(0xdeadbeef)); return nullptr; } }; @@ -209,7 +209,7 @@ void AbstractFontConverterTest::importGlyphCacheFromSingleData() { /* doImportFromData() should call doImportFromSingleData() */ SingleGlyphCacheDataImporter importer; const char data[] = {'\xa5'}; - std::unique_ptr cache = importer.importGlyphCacheFromData({{{}, data}}); + Containers::Pointer cache = importer.importGlyphCacheFromData({{{}, data}}); CORRADE_COMPARE(cache.get(), reinterpret_cast(0xdeadbeef)); /* The pointer is invalid, avoid deletion */ @@ -219,7 +219,7 @@ void AbstractFontConverterTest::importGlyphCacheFromSingleData() { void AbstractFontConverterTest::importGlyphCacheFromFile() { /* doImportFromFile() should call doImportFromSingleData() */ SingleGlyphCacheDataImporter importer; - std::unique_ptr cache = importer.importGlyphCacheFromFile(Utility::Directory::join(TEXT_TEST_DIR, "data.bin")); + Containers::Pointer cache = importer.importGlyphCacheFromFile(Utility::Directory::join(TEXT_TEST_DIR, "data.bin")); CORRADE_COMPARE(cache.get(), reinterpret_cast(0xdeadbeef)); /* The pointer is invalid, avoid deletion */ diff --git a/src/Magnum/Text/Test/AbstractFontTest.cpp b/src/Magnum/Text/Test/AbstractFontTest.cpp index abd4e3dac..03aa9c0f0 100644 --- a/src/Magnum/Text/Test/AbstractFontTest.cpp +++ b/src/Magnum/Text/Test/AbstractFontTest.cpp @@ -63,7 +63,7 @@ class SingleDataFont: public Text::AbstractFont { Vector2 doGlyphAdvance(UnsignedInt) override { return {}; } - std::unique_ptr doLayout(const GlyphCache&, Float, const std::string&) override { + Containers::Pointer doLayout(const GlyphCache&, Float, const std::string&) override { return nullptr; } diff --git a/src/Magnum/Text/Test/RendererGLTest.cpp b/src/Magnum/Text/Test/RendererGLTest.cpp index dcfb64c26..4bda2aa5c 100644 --- a/src/Magnum/Text/Test/RendererGLTest.cpp +++ b/src/Magnum/Text/Test/RendererGLTest.cpp @@ -79,8 +79,8 @@ class TestFont: public Text::AbstractFont { UnsignedInt doGlyphId(char32_t) override { return 0; } Vector2 doGlyphAdvance(UnsignedInt) override { return {}; } - std::unique_ptr doLayout(const GlyphCache&, const Float size, const std::string& text) override { - return std::unique_ptr(new TestLayouter(size, text.size())); + Containers::Pointer doLayout(const GlyphCache&, const Float size, const std::string& text) override { + return Containers::Pointer(new TestLayouter(size, text.size())); } }; @@ -353,8 +353,8 @@ void RendererGLTest::multiline() { UnsignedInt doGlyphId(char32_t) override { return 0; } Vector2 doGlyphAdvance(UnsignedInt) override { return {}; } - std::unique_ptr doLayout(const GlyphCache&, Float, const std::string& text) override { - return std::unique_ptr(new Layouter(text.size())); + Containers::Pointer doLayout(const GlyphCache&, Float, const std::string& text) override { + return Containers::Pointer(new Layouter(text.size())); } bool _opened; diff --git a/src/Magnum/Text/fontconverter.cpp b/src/Magnum/Text/fontconverter.cpp index 27cc75b99..3da437c64 100644 --- a/src/Magnum/Text/fontconverter.cpp +++ b/src/Magnum/Text/fontconverter.cpp @@ -164,14 +164,14 @@ int FontConverter::exec() { PluginManager::Manager fontManager{ args.value("plugin-dir").empty() ? std::string{} : Utility::Directory::join(args.value("plugin-dir"), Text::AbstractFont::pluginSearchPaths()[0])}; - std::unique_ptr font = fontManager.loadAndInstantiate(args.value("font")); + Containers::Pointer font = fontManager.loadAndInstantiate(args.value("font")); if(!font) return 1; /* Load font converter */ PluginManager::Manager converterManager{ args.value("plugin-dir").empty() ? std::string{} : Utility::Directory::join(args.value("plugin-dir"), Text::AbstractFontConverter::pluginSearchPaths()[0])}; - std::unique_ptr converter = converterManager.loadAndInstantiate(args.value("converter")); + Containers::Pointer converter = converterManager.loadAndInstantiate(args.value("converter")); if(!converter) return 2; /* Open font */ @@ -181,7 +181,7 @@ int FontConverter::exec() { } /* Create distance field glyph cache if radius is specified */ - std::unique_ptr cache; + Containers::Pointer cache; if(!args.value("output-size").isZero()) { Debug() << "Populating distance field glyph cache..."; diff --git a/src/Magnum/TextureTools/DistanceField.h b/src/Magnum/TextureTools/DistanceField.h index 63306c241..ad603b838 100644 --- a/src/Magnum/TextureTools/DistanceField.h +++ b/src/Magnum/TextureTools/DistanceField.h @@ -29,11 +29,11 @@ * @brief Function @ref Magnum::TextureTools::distanceField() */ -#include - #include "Magnum/configure.h" #ifdef MAGNUM_TARGET_GL +#include + #include "Magnum/Magnum.h" #include "Magnum/GL/GL.h" #ifndef MAGNUM_TARGET_GLES @@ -126,7 +126,7 @@ class MAGNUM_TEXTURETOOLS_EXPORT DistanceField { private: struct State; - std::unique_ptr _state; + Containers::Pointer _state; }; #ifdef MAGNUM_BUILD_DEPRECATED diff --git a/src/Magnum/TextureTools/Test/DistanceFieldGLTest.cpp b/src/Magnum/TextureTools/Test/DistanceFieldGLTest.cpp index 6ce14fe05..73120794f 100644 --- a/src/Magnum/TextureTools/Test/DistanceFieldGLTest.cpp +++ b/src/Magnum/TextureTools/Test/DistanceFieldGLTest.cpp @@ -91,7 +91,7 @@ DistanceFieldGLTest::DistanceFieldGLTest() { } void DistanceFieldGLTest::test() { - std::unique_ptr importer; + Containers::Pointer importer; if(!(importer = _manager.loadAndInstantiate("TgaImporter"))) CORRADE_SKIP("TgaImporter plugin not found."); @@ -207,7 +207,7 @@ void DistanceFieldGLTest::test() { #ifndef MAGNUM_TARGET_WEBGL void DistanceFieldGLTest::benchmark() { - std::unique_ptr importer; + Containers::Pointer importer; if(!(importer = _manager.loadAndInstantiate("TgaImporter"))) CORRADE_SKIP("TgaImporter plugin not found."); diff --git a/src/Magnum/TextureTools/distancefieldconverter.cpp b/src/Magnum/TextureTools/distancefieldconverter.cpp index 3e790d08f..5143a2237 100644 --- a/src/Magnum/TextureTools/distancefieldconverter.cpp +++ b/src/Magnum/TextureTools/distancefieldconverter.cpp @@ -158,14 +158,14 @@ int DistanceFieldConverter::exec() { PluginManager::Manager importerManager{ args.value("plugin-dir").empty() ? std::string{} : Utility::Directory::join(args.value("plugin-dir"), Trade::AbstractImporter::pluginSearchPaths()[0])}; - std::unique_ptr importer = importerManager.loadAndInstantiate(args.value("importer")); + Containers::Pointer importer = importerManager.loadAndInstantiate(args.value("importer")); if(!importer) return 1; /* Load converter plugin */ PluginManager::Manager converterManager{ args.value("plugin-dir").empty() ? std::string{} : Utility::Directory::join(args.value("plugin-dir"), Trade::AbstractImageConverter::pluginSearchPaths()[0])}; - std::unique_ptr converter = converterManager.loadAndInstantiate(args.value("converter")); + Containers::Pointer converter = converterManager.loadAndInstantiate(args.value("converter")); if(!converter) return 2; /* Open input file */ diff --git a/src/Magnum/Trade/AbstractImporter.cpp b/src/Magnum/Trade/AbstractImporter.cpp index 07d37252e..436d2d846 100644 --- a/src/Magnum/Trade/AbstractImporter.cpp +++ b/src/Magnum/Trade/AbstractImporter.cpp @@ -336,13 +336,13 @@ std::string AbstractImporter::object2DName(const UnsignedInt id) { std::string AbstractImporter::doObject2DName(UnsignedInt) { return {}; } -std::unique_ptr AbstractImporter::object2D(const UnsignedInt id) { +Containers::Pointer AbstractImporter::object2D(const UnsignedInt id) { CORRADE_ASSERT(isOpened(), "Trade::AbstractImporter::object2D(): no file opened", {}); CORRADE_ASSERT(id < doObject2DCount(), "Trade::AbstractImporter::object2D(): index out of range", {}); return doObject2D(id); } -std::unique_ptr AbstractImporter::doObject2D(UnsignedInt) { +Containers::Pointer AbstractImporter::doObject2D(UnsignedInt) { CORRADE_ASSERT(false, "Trade::AbstractImporter::object2D(): not implemented", {}); } @@ -368,13 +368,13 @@ std::string AbstractImporter::object3DName(const UnsignedInt id) { std::string AbstractImporter::doObject3DName(UnsignedInt) { return {}; } -std::unique_ptr AbstractImporter::object3D(const UnsignedInt id) { +Containers::Pointer AbstractImporter::object3D(const UnsignedInt id) { CORRADE_ASSERT(isOpened(), "Trade::AbstractImporter::object3D(): no file opened", {}); CORRADE_ASSERT(id < doObject3DCount(), "Trade::AbstractImporter::object3D(): index out of range", {}); return doObject3D(id); } -std::unique_ptr AbstractImporter::doObject3D(UnsignedInt) { +Containers::Pointer AbstractImporter::doObject3D(UnsignedInt) { CORRADE_ASSERT(false, "Trade::AbstractImporter::object3D(): not implemented", {}); } @@ -464,13 +464,13 @@ std::string AbstractImporter::materialName(const UnsignedInt id) { std::string AbstractImporter::doMaterialName(UnsignedInt) { return {}; } -std::unique_ptr AbstractImporter::material(const UnsignedInt id) { +Containers::Pointer AbstractImporter::material(const UnsignedInt id) { CORRADE_ASSERT(isOpened(), "Trade::AbstractImporter::material(): no file opened", {}); CORRADE_ASSERT(id < doMaterialCount(), "Trade::AbstractImporter::material(): index out of range", {}); return doMaterial(id); } -std::unique_ptr AbstractImporter::doMaterial(UnsignedInt) { +Containers::Pointer AbstractImporter::doMaterial(UnsignedInt) { CORRADE_ASSERT(false, "Trade::AbstractImporter::material(): not implemented", {}); } diff --git a/src/Magnum/Trade/AbstractImporter.h b/src/Magnum/Trade/AbstractImporter.h index a9c6cf4ab..b0ce69565 100644 --- a/src/Magnum/Trade/AbstractImporter.h +++ b/src/Magnum/Trade/AbstractImporter.h @@ -29,7 +29,6 @@ * @brief Class @ref Magnum::Trade::AbstractImporter */ -#include #include #include @@ -168,7 +167,7 @@ about concrete types returned and accepted by these functions. @subsection Trade-AbstractImporter-usage-casting Polymorphic imported data types -Some data access functions return @ref std::unique_ptr instead of +Some data access functions return @ref Corrade::Containers::Pointer instead of @ref Corrade::Containers::Optional because the result might be a particular subclass of given type. Those functions are @ref material(), @ref object2D() and @ref object3D(). You can cast the abstract base to a concrete type @@ -176,8 +175,9 @@ depending on its reported type, for example: @snippet MagnumTrade.cpp AbstractImporter-usage-cast -Another option is making use of the @ref std::static_pointer_cast() family of utilities, but note that in that case your @ref std::unique_ptr will be *moved -into* a @ref std::shared_ptr instance and that might not be desirable. +Another option is making use of the @ref Containers::pointerCast() utility, but +note that in that case the original @ref Corrade::Containers::Pointer will be +* *moved into* a new instance and that might not be desirable. @section Trade-AbstractImporter-subclassing Subclassing @@ -581,7 +581,7 @@ class MAGNUM_TRADE_EXPORT AbstractImporter: public PluginManager::AbstractManagi * * Returns given object or @cpp nullptr @ce if importing failed. */ - std::unique_ptr object2D(UnsignedInt id); + Containers::Pointer object2D(UnsignedInt id); /** @brief Three-dimensional object count */ UnsignedInt object3DCount() const; @@ -608,7 +608,7 @@ class MAGNUM_TRADE_EXPORT AbstractImporter: public PluginManager::AbstractManagi * * Returns given object or @cpp nullptr @ce if importing failed. */ - std::unique_ptr object3D(UnsignedInt id); + Containers::Pointer object3D(UnsignedInt id); /** @brief Two-dimensional mesh count */ UnsignedInt mesh2DCount() const; @@ -689,7 +689,7 @@ class MAGNUM_TRADE_EXPORT AbstractImporter: public PluginManager::AbstractManagi * * Returns given material or @cpp nullptr @ce if importing failed. */ - std::unique_ptr material(UnsignedInt id); + Containers::Pointer material(UnsignedInt id); /** @brief Texture count */ UnsignedInt textureCount() const; @@ -987,7 +987,7 @@ class MAGNUM_TRADE_EXPORT AbstractImporter: public PluginManager::AbstractManagi virtual std::string doObject2DName(UnsignedInt id); /** @brief Implementation for @ref object2D() */ - virtual std::unique_ptr doObject2D(UnsignedInt id); + virtual Containers::Pointer doObject2D(UnsignedInt id); /** * @brief Implementation for @ref object3DCount() @@ -1011,7 +1011,7 @@ class MAGNUM_TRADE_EXPORT AbstractImporter: public PluginManager::AbstractManagi virtual std::string doObject3DName(UnsignedInt id); /** @brief Implementation for @ref object3D() */ - virtual std::unique_ptr doObject3D(UnsignedInt id); + virtual Containers::Pointer doObject3D(UnsignedInt id); /** * @brief Implementation for @ref mesh2DCount() @@ -1083,7 +1083,7 @@ class MAGNUM_TRADE_EXPORT AbstractImporter: public PluginManager::AbstractManagi virtual std::string doMaterialName(UnsignedInt id); /** @brief Implementation for @ref material() */ - virtual std::unique_ptr doMaterial(UnsignedInt id); + virtual Containers::Pointer doMaterial(UnsignedInt id); /** * @brief Implementation for @ref textureCount() diff --git a/src/Magnum/Trade/Test/AbstractImporterTest.cpp b/src/Magnum/Trade/Test/AbstractImporterTest.cpp index 144d5d9dd..be77b7fc8 100644 --- a/src/Magnum/Trade/Test/AbstractImporterTest.cpp +++ b/src/Magnum/Trade/Test/AbstractImporterTest.cpp @@ -1649,8 +1649,8 @@ void AbstractImporterTest::object2D() { if(id == 7) return "eighth"; else return {}; } - std::unique_ptr doObject2D(UnsignedInt id) override { - if(id == 7) return std::unique_ptr{new ObjectData2D{{}, {}, &state}}; + Containers::Pointer doObject2D(UnsignedInt id) override { + if(id == 7) return Containers::pointer(new ObjectData2D{{}, {}, &state}); else return {}; } }; @@ -1825,8 +1825,8 @@ void AbstractImporterTest::object3D() { if(id == 7) return "eighth"; else return {}; } - std::unique_ptr doObject3D(UnsignedInt id) override { - if(id == 7) return std::unique_ptr{new ObjectData3D{{}, {}, &state}}; + Containers::Pointer doObject3D(UnsignedInt id) override { + if(id == 7) return Containers::pointer(new ObjectData3D{{}, {}, &state}); else return {}; } }; @@ -2353,8 +2353,8 @@ void AbstractImporterTest::material() { if(id == 7) return "eighth"; else return {}; } - std::unique_ptr doMaterial(UnsignedInt id) override { - if(id == 7) return std::unique_ptr{new PhongMaterialData{{}, {}, {}, {}, &state}}; + Containers::Pointer doMaterial(UnsignedInt id) override { + if(id == 7) return Containers::pointer(new PhongMaterialData{{}, {}, {}, {}, &state}); else return {}; } }; diff --git a/src/Magnum/Trade/imageconverter.cpp b/src/Magnum/Trade/imageconverter.cpp index e06591715..f6fe333d3 100644 --- a/src/Magnum/Trade/imageconverter.cpp +++ b/src/Magnum/Trade/imageconverter.cpp @@ -101,14 +101,14 @@ int main(int argc, char** argv) { PluginManager::Manager importerManager{ args.value("plugin-dir").empty() ? std::string{} : Utility::Directory::join(args.value("plugin-dir"), Trade::AbstractImporter::pluginSearchPaths()[0])}; - std::unique_ptr importer = importerManager.loadAndInstantiate(args.value("importer")); + Containers::Pointer importer = importerManager.loadAndInstantiate(args.value("importer")); if(!importer) return 1; /* Load converter plugin */ PluginManager::Manager converterManager{ args.value("plugin-dir").empty() ? std::string{} : Utility::Directory::join(args.value("plugin-dir"), Trade::AbstractImageConverter::pluginSearchPaths()[0])}; - std::unique_ptr converter = converterManager.loadAndInstantiate(args.value("converter")); + Containers::Pointer converter = converterManager.loadAndInstantiate(args.value("converter")); if(!converter) return 2; /* Open input file */ diff --git a/src/MagnumPlugins/AnyAudioImporter/AnyImporter.cpp b/src/MagnumPlugins/AnyAudioImporter/AnyImporter.cpp index 836bac57d..57a4614f8 100644 --- a/src/MagnumPlugins/AnyAudioImporter/AnyImporter.cpp +++ b/src/MagnumPlugins/AnyAudioImporter/AnyImporter.cpp @@ -68,7 +68,7 @@ void AnyImporter::doOpenFile(const std::string& filename) { /* Try to open the file (error output should be printed by the plugin itself) */ - std::unique_ptr importer = static_cast*>(manager())->instantiate(plugin); + Containers::Pointer importer = static_cast*>(manager())->instantiate(plugin); if(!importer->openFile(filename)) return; /* Success, save the instance */ diff --git a/src/MagnumPlugins/AnyAudioImporter/AnyImporter.h b/src/MagnumPlugins/AnyAudioImporter/AnyImporter.h index bc6153579..532a9de93 100644 --- a/src/MagnumPlugins/AnyAudioImporter/AnyImporter.h +++ b/src/MagnumPlugins/AnyAudioImporter/AnyImporter.h @@ -29,7 +29,7 @@ * @brief Class @ref Magnum::Audio::AnyImporter */ -#include +#include #include "Magnum/Audio/AbstractImporter.h" #include "MagnumPlugins/AnyAudioImporter/configure.h" @@ -98,7 +98,7 @@ class MAGNUM_ANYAUDIOIMPORTER_EXPORT AnyImporter: public AbstractImporter { MAGNUM_ANYAUDIOIMPORTER_LOCAL UnsignedInt doFrequency() const override; MAGNUM_ANYAUDIOIMPORTER_LOCAL Containers::Array doData() override; - std::unique_ptr _in; + Containers::Pointer _in; }; }} diff --git a/src/MagnumPlugins/AnyAudioImporter/Test/AnyAudioImporterTest.cpp b/src/MagnumPlugins/AnyAudioImporter/Test/AnyAudioImporterTest.cpp index efac74393..1076fd43f 100644 --- a/src/MagnumPlugins/AnyAudioImporter/Test/AnyAudioImporterTest.cpp +++ b/src/MagnumPlugins/AnyAudioImporter/Test/AnyAudioImporterTest.cpp @@ -64,7 +64,7 @@ void AnyImporterTest::wav() { if(!(_manager.loadState("WavAudioImporter") & PluginManager::LoadState::Loaded)) CORRADE_SKIP("WavAudioImporter plugin not enabled, cannot test"); - std::unique_ptr importer = _manager.instantiate("AnyAudioImporter"); + Containers::Pointer importer = _manager.instantiate("AnyAudioImporter"); CORRADE_VERIFY(importer->openFile(WAV_FILE)); /* Check only parameters, as it is good enough proof that it is working */ @@ -76,7 +76,7 @@ void AnyImporterTest::unknown() { std::ostringstream output; Error redirectError{&output}; - std::unique_ptr importer = _manager.instantiate("AnyAudioImporter"); + Containers::Pointer importer = _manager.instantiate("AnyAudioImporter"); CORRADE_VERIFY(!importer->openFile("sound.mid")); CORRADE_COMPARE(output.str(), "Audio::AnyImporter::openFile(): cannot determine type of file sound.mid\n"); diff --git a/src/MagnumPlugins/AnyImageConverter/Test/AnyImageConverterTest.cpp b/src/MagnumPlugins/AnyImageConverter/Test/AnyImageConverterTest.cpp index 7991d9808..565a411eb 100644 --- a/src/MagnumPlugins/AnyImageConverter/Test/AnyImageConverterTest.cpp +++ b/src/MagnumPlugins/AnyImageConverter/Test/AnyImageConverterTest.cpp @@ -84,7 +84,7 @@ void AnyImageConverterTest::tga() { CORRADE_VERIFY(Utility::Directory::rm(filename)); /* Just test that the exported file exists */ - std::unique_ptr converter = _manager.instantiate("AnyImageConverter"); + Containers::Pointer converter = _manager.instantiate("AnyImageConverter"); CORRADE_VERIFY(converter->exportToFile(Image, filename)); CORRADE_VERIFY(Utility::Directory::fileExists(filename)); } @@ -93,7 +93,7 @@ void AnyImageConverterTest::unknown() { std::ostringstream output; Error redirectError{&output}; - std::unique_ptr converter = _manager.instantiate("AnyImageConverter"); + Containers::Pointer converter = _manager.instantiate("AnyImageConverter"); CORRADE_VERIFY(!converter->exportToFile(Image, "image.xcf")); CORRADE_COMPARE(output.str(), "Trade::AnyImageConverter::exportToFile(): cannot determine type of file image.xcf\n"); diff --git a/src/MagnumPlugins/AnyImageImporter/AnyImageImporter.cpp b/src/MagnumPlugins/AnyImageImporter/AnyImageImporter.cpp index ffaaa6e25..c23df528c 100644 --- a/src/MagnumPlugins/AnyImageImporter/AnyImageImporter.cpp +++ b/src/MagnumPlugins/AnyImageImporter/AnyImageImporter.cpp @@ -113,7 +113,7 @@ void AnyImageImporter::doOpenFile(const std::string& filename) { /* Try to open the file (error output should be printed by the plugin itself) */ - std::unique_ptr importer = static_cast*>(manager())->instantiate(plugin); + Containers::Pointer importer = static_cast*>(manager())->instantiate(plugin); if(!importer->openFile(filename)) return; /* Success, save the instance */ @@ -181,7 +181,7 @@ void AnyImageImporter::doOpenData(Containers::ArrayView data) { /* Try to open the file (error output should be printed by the plugin itself) */ - std::unique_ptr importer = static_cast*>(manager())->instantiate(plugin); + Containers::Pointer importer = static_cast*>(manager())->instantiate(plugin); if(!importer->openData(data)) return; /* Success, save the instance */ diff --git a/src/MagnumPlugins/AnyImageImporter/AnyImageImporter.h b/src/MagnumPlugins/AnyImageImporter/AnyImageImporter.h index 7717ade95..403228edc 100644 --- a/src/MagnumPlugins/AnyImageImporter/AnyImageImporter.h +++ b/src/MagnumPlugins/AnyImageImporter/AnyImageImporter.h @@ -123,7 +123,7 @@ class MAGNUM_ANYIMAGEIMPORTER_EXPORT AnyImageImporter: public AbstractImporter { MAGNUM_ANYIMAGEIMPORTER_LOCAL UnsignedInt doImage2DCount() const override; MAGNUM_ANYIMAGEIMPORTER_LOCAL Containers::Optional doImage2D(UnsignedInt id) override; - std::unique_ptr _in; + Containers::Pointer _in; }; }} diff --git a/src/MagnumPlugins/AnyImageImporter/Test/AnyImageImporterTest.cpp b/src/MagnumPlugins/AnyImageImporter/Test/AnyImageImporterTest.cpp index 0480ceb35..b89224179 100644 --- a/src/MagnumPlugins/AnyImageImporter/Test/AnyImageImporterTest.cpp +++ b/src/MagnumPlugins/AnyImageImporter/Test/AnyImageImporterTest.cpp @@ -119,7 +119,7 @@ void AnyImageImporterTest::load() { if(!(_manager.loadState("TgaImporter") & PluginManager::LoadState::Loaded)) CORRADE_SKIP("TgaImporter plugin not enabled, cannot test"); - std::unique_ptr importer = _manager.instantiate("AnyImageImporter"); + Containers::Pointer importer = _manager.instantiate("AnyImageImporter"); Containers::Array storage; importer->setFileCallback(data.callback, storage); @@ -139,7 +139,7 @@ void AnyImageImporterTest::detect() { auto&& data = DetectData[testCaseInstanceId()]; setTestCaseDescription(data.name); - std::unique_ptr importer = _manager.instantiate("AnyImageImporter"); + Containers::Pointer importer = _manager.instantiate("AnyImageImporter"); Containers::Array storage; importer->setFileCallback(data.callback, storage); @@ -161,7 +161,7 @@ void AnyImageImporterTest::unknownExtension() { std::ostringstream output; Error redirectError{&output}; - std::unique_ptr importer = _manager.instantiate("AnyImageImporter"); + Containers::Pointer importer = _manager.instantiate("AnyImageImporter"); CORRADE_VERIFY(!importer->openFile("image.xcf")); CORRADE_COMPARE(output.str(), "Trade::AnyImageImporter::openFile(): cannot determine type of file image.xcf\n"); @@ -173,7 +173,7 @@ void AnyImageImporterTest::unknownSignature() { constexpr const char data[]{ 0x25, 0x3a }; - std::unique_ptr importer = _manager.instantiate("AnyImageImporter"); + Containers::Pointer importer = _manager.instantiate("AnyImageImporter"); CORRADE_VERIFY(!importer->openData(data)); CORRADE_COMPARE(output.str(), "Trade::AnyImageImporter::openData(): cannot determine type from signature 0x253a0000\n"); @@ -183,7 +183,7 @@ void AnyImageImporterTest::emptyData() { std::ostringstream output; Error redirectError{&output}; - std::unique_ptr importer = _manager.instantiate("AnyImageImporter"); + Containers::Pointer importer = _manager.instantiate("AnyImageImporter"); CORRADE_VERIFY(!importer->openData(nullptr)); CORRADE_COMPARE(output.str(), "Trade::AnyImageImporter::openData(): file is empty\n"); diff --git a/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.cpp b/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.cpp index ee65d2dcd..8d2b97776 100644 --- a/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.cpp +++ b/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.cpp @@ -132,7 +132,7 @@ void AnySceneImporter::doOpenFile(const std::string& filename) { /* Try to open the file (error output should be printed by the plugin itself) */ - std::unique_ptr importer = static_cast*>(manager())->instantiate(plugin); + Containers::Pointer importer = static_cast*>(manager())->instantiate(plugin); if(!importer->openFile(filename)) return; /* Success, save the instance */ @@ -164,12 +164,12 @@ Containers::Optional AnySceneImporter::doCamera(const UnsignedInt id UnsignedInt AnySceneImporter::doObject2DCount() const { return _in->object2DCount(); } Int AnySceneImporter::doObject2DForName(const std::string& name) { return _in->object2DForName(name); } std::string AnySceneImporter::doObject2DName(const UnsignedInt id) { return _in->object2DName(id); } -std::unique_ptr AnySceneImporter::doObject2D(const UnsignedInt id) { return _in->object2D(id); } +Containers::Pointer AnySceneImporter::doObject2D(const UnsignedInt id) { return _in->object2D(id); } UnsignedInt AnySceneImporter::doObject3DCount() const { return _in->object3DCount(); } Int AnySceneImporter::doObject3DForName(const std::string& name) { return _in->object3DForName(name); } std::string AnySceneImporter::doObject3DName(const UnsignedInt id) { return _in->object3DName(id); } -std::unique_ptr AnySceneImporter::doObject3D(const UnsignedInt id) { return _in->object3D(id); } +Containers::Pointer AnySceneImporter::doObject3D(const UnsignedInt id) { return _in->object3D(id); } UnsignedInt AnySceneImporter::doMesh2DCount() const { return _in->mesh2DCount(); } Int AnySceneImporter::doMesh2DForName(const std::string& name) { return _in->mesh2DForName(name); } @@ -184,7 +184,7 @@ Containers::Optional AnySceneImporter::doMesh3D(const UnsignedInt id UnsignedInt AnySceneImporter::doMaterialCount() const { return _in->materialCount(); } Int AnySceneImporter::doMaterialForName(const std::string& name) { return _in->materialForName(name); } std::string AnySceneImporter::doMaterialName(const UnsignedInt id) { return _in->materialName(id); } -std::unique_ptr AnySceneImporter::doMaterial(const UnsignedInt id) { return _in->material(id); } +Containers::Pointer AnySceneImporter::doMaterial(const UnsignedInt id) { return _in->material(id); } UnsignedInt AnySceneImporter::doTextureCount() const { return _in->textureCount(); } Int AnySceneImporter::doTextureForName(const std::string& name) { return _in->textureForName(name); } diff --git a/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.h b/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.h index c8001798f..bf90270b0 100644 --- a/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.h +++ b/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.h @@ -149,12 +149,12 @@ class MAGNUM_ANYSCENEIMPORTER_EXPORT AnySceneImporter: public AbstractImporter { MAGNUM_ANYSCENEIMPORTER_LOCAL UnsignedInt doObject2DCount() const override; MAGNUM_ANYSCENEIMPORTER_LOCAL Int doObject2DForName(const std::string& name) override; MAGNUM_ANYSCENEIMPORTER_LOCAL std::string doObject2DName(UnsignedInt id) override; - MAGNUM_ANYSCENEIMPORTER_LOCAL std::unique_ptr doObject2D(UnsignedInt id) override; + MAGNUM_ANYSCENEIMPORTER_LOCAL Containers::Pointer doObject2D(UnsignedInt id) override; MAGNUM_ANYSCENEIMPORTER_LOCAL UnsignedInt doObject3DCount() const override; MAGNUM_ANYSCENEIMPORTER_LOCAL Int doObject3DForName(const std::string& name) override; MAGNUM_ANYSCENEIMPORTER_LOCAL std::string doObject3DName(UnsignedInt id) override; - MAGNUM_ANYSCENEIMPORTER_LOCAL std::unique_ptr doObject3D(UnsignedInt id) override; + MAGNUM_ANYSCENEIMPORTER_LOCAL Containers::Pointer doObject3D(UnsignedInt id) override; MAGNUM_ANYSCENEIMPORTER_LOCAL UnsignedInt doMesh2DCount() const override; MAGNUM_ANYSCENEIMPORTER_LOCAL Int doMesh2DForName(const std::string& name) override; @@ -169,7 +169,7 @@ class MAGNUM_ANYSCENEIMPORTER_EXPORT AnySceneImporter: public AbstractImporter { MAGNUM_ANYSCENEIMPORTER_LOCAL UnsignedInt doMaterialCount() const override; MAGNUM_ANYSCENEIMPORTER_LOCAL Int doMaterialForName(const std::string& name) override; MAGNUM_ANYSCENEIMPORTER_LOCAL std::string doMaterialName(UnsignedInt id) override; - MAGNUM_ANYSCENEIMPORTER_LOCAL std::unique_ptr doMaterial(UnsignedInt id) override; + MAGNUM_ANYSCENEIMPORTER_LOCAL Containers::Pointer doMaterial(UnsignedInt id) override; MAGNUM_ANYSCENEIMPORTER_LOCAL UnsignedInt doTextureCount() const override; MAGNUM_ANYSCENEIMPORTER_LOCAL Int doTextureForName(const std::string& name) override; @@ -191,7 +191,7 @@ class MAGNUM_ANYSCENEIMPORTER_EXPORT AnySceneImporter: public AbstractImporter { MAGNUM_ANYSCENEIMPORTER_LOCAL std::string doImage3DName(UnsignedInt id) override; MAGNUM_ANYSCENEIMPORTER_LOCAL Containers::Optional doImage3D(UnsignedInt id) override; - std::unique_ptr _in; + Containers::Pointer _in; }; }} diff --git a/src/MagnumPlugins/AnySceneImporter/Test/AnySceneImporterTest.cpp b/src/MagnumPlugins/AnySceneImporter/Test/AnySceneImporterTest.cpp index 0f8bd5b14..ec24030bc 100644 --- a/src/MagnumPlugins/AnySceneImporter/Test/AnySceneImporterTest.cpp +++ b/src/MagnumPlugins/AnySceneImporter/Test/AnySceneImporterTest.cpp @@ -67,7 +67,7 @@ void AnySceneImporterTest::obj() { if(!(_manager.loadState("ObjImporter") & PluginManager::LoadState::Loaded)) CORRADE_SKIP("ObjImporter plugin not enabled, cannot test"); - std::unique_ptr importer = _manager.instantiate("AnySceneImporter"); + Containers::Pointer importer = _manager.instantiate("AnySceneImporter"); CORRADE_VERIFY(importer->openFile(OBJ_FILE)); /* Check only size, as it is good enough proof that it is working */ @@ -80,7 +80,7 @@ void AnySceneImporterTest::unknown() { std::ostringstream output; Error redirectError{&output}; - std::unique_ptr importer = _manager.instantiate("AnySceneImporter"); + Containers::Pointer importer = _manager.instantiate("AnySceneImporter"); CORRADE_VERIFY(!importer->openFile("mesh.wtf")); CORRADE_COMPARE(output.str(), "Trade::AnySceneImporter::openFile(): cannot determine type of file mesh.wtf\n"); diff --git a/src/MagnumPlugins/MagnumFont/MagnumFont.cpp b/src/MagnumPlugins/MagnumFont/MagnumFont.cpp index 46288b5e6..24be1a41a 100644 --- a/src/MagnumPlugins/MagnumFont/MagnumFont.cpp +++ b/src/MagnumPlugins/MagnumFont/MagnumFont.cpp @@ -184,9 +184,9 @@ Vector2 MagnumFont::doGlyphAdvance(const UnsignedInt glyph) { return glyph < _opened->glyphAdvance.size() ? _opened->glyphAdvance[glyph] : Vector2(); } -std::unique_ptr MagnumFont::doCreateGlyphCache() { +Containers::Pointer MagnumFont::doCreateGlyphCache() { /* Set cache image */ - std::unique_ptr cache(new Text::GlyphCache( + Containers::Pointer cache(new Text::GlyphCache( _opened->conf.value("originalImageSize"), _opened->image.size(), _opened->conf.value("padding"))); @@ -200,7 +200,7 @@ std::unique_ptr MagnumFont::doCreateGlyphCache() { return cache; } -std::unique_ptr MagnumFont::doLayout(const GlyphCache& cache, Float size, const std::string& text) { +Containers::Pointer MagnumFont::doLayout(const GlyphCache& cache, Float size, const std::string& text) { /* Get glyph codes from characters */ std::vector glyphs; glyphs.reserve(text.size()); @@ -211,7 +211,7 @@ std::unique_ptr MagnumFont::doLayout(const GlyphCache& cache, glyphs.push_back(it == _opened->glyphId.end() ? 0 : it->second); } - return std::unique_ptr(new MagnumFontLayouter(_opened->glyphAdvance, cache, this->size(), size, std::move(glyphs))); + return Containers::Pointer(new MagnumFontLayouter(_opened->glyphAdvance, cache, this->size(), size, std::move(glyphs))); } namespace { diff --git a/src/MagnumPlugins/MagnumFont/MagnumFont.h b/src/MagnumPlugins/MagnumFont/MagnumFont.h index 2ab3b4b10..0a20d4f3a 100644 --- a/src/MagnumPlugins/MagnumFont/MagnumFont.h +++ b/src/MagnumPlugins/MagnumFont/MagnumFont.h @@ -143,8 +143,8 @@ class MAGNUM_MAGNUMFONT_EXPORT MagnumFont: public AbstractFont { MAGNUM_MAGNUMFONT_LOCAL UnsignedInt doGlyphId(char32_t character) override; MAGNUM_MAGNUMFONT_LOCAL Vector2 doGlyphAdvance(UnsignedInt glyph) override; - MAGNUM_MAGNUMFONT_LOCAL std::unique_ptr doCreateGlyphCache() override; - MAGNUM_MAGNUMFONT_LOCAL std::unique_ptr doLayout(const GlyphCache& cache, Float size, const std::string& text) override; + MAGNUM_MAGNUMFONT_LOCAL Containers::Pointer doCreateGlyphCache() override; + MAGNUM_MAGNUMFONT_LOCAL Containers::Pointer doLayout(const GlyphCache& cache, Float size, const std::string& text) override; MAGNUM_MAGNUMFONT_LOCAL Metrics openInternal(Utility::Configuration&& conf, Trade::ImageData2D&& image); diff --git a/src/MagnumPlugins/MagnumFont/Test/MagnumFontGLTest.cpp b/src/MagnumPlugins/MagnumFont/Test/MagnumFontGLTest.cpp index f49e2e66d..3cdf55985 100644 --- a/src/MagnumPlugins/MagnumFont/Test/MagnumFontGLTest.cpp +++ b/src/MagnumPlugins/MagnumFont/Test/MagnumFontGLTest.cpp @@ -63,7 +63,7 @@ MagnumFontGLTest::MagnumFontGLTest() { } void MagnumFontGLTest::nonexistent() { - std::unique_ptr font = _fontManager.instantiate("MagnumFont"); + Containers::Pointer font = _fontManager.instantiate("MagnumFont"); std::ostringstream out; Error redirectError{&out}; @@ -72,7 +72,7 @@ void MagnumFontGLTest::nonexistent() { } void MagnumFontGLTest::properties() { - std::unique_ptr font = _fontManager.instantiate("MagnumFont"); + Containers::Pointer font = _fontManager.instantiate("MagnumFont"); CORRADE_VERIFY(font->openFile(Utility::Directory::join(MAGNUMFONT_TEST_DIR, "font.conf"), 0.0f)); CORRADE_COMPARE(font->size(), 16.0f); @@ -83,7 +83,7 @@ void MagnumFontGLTest::properties() { } void MagnumFontGLTest::layout() { - std::unique_ptr font = _fontManager.instantiate("MagnumFont"); + Containers::Pointer font = _fontManager.instantiate("MagnumFont"); CORRADE_VERIFY(font->openFile(Utility::Directory::join(MAGNUMFONT_TEST_DIR, "font.conf"), 0.0f)); @@ -127,12 +127,12 @@ void MagnumFontGLTest::layout() { } void MagnumFontGLTest::createGlyphCache() { - std::unique_ptr font = _fontManager.instantiate("MagnumFont"); + Containers::Pointer font = _fontManager.instantiate("MagnumFont"); CORRADE_VERIFY(font->openFile(Utility::Directory::join(MAGNUMFONT_TEST_DIR, "font.conf"), 0.0f)); /* Just testing that nothing crashes, asserts or errors */ - std::unique_ptr cache = font->createGlyphCache(); + Containers::Pointer cache = font->createGlyphCache(); MAGNUM_VERIFY_NO_GL_ERROR(); CORRADE_VERIFY(cache); diff --git a/src/MagnumPlugins/MagnumFontConverter/Test/MagnumFontConverterGLTest.cpp b/src/MagnumPlugins/MagnumFontConverter/Test/MagnumFontConverterGLTest.cpp index d7373632f..892da3adf 100644 --- a/src/MagnumPlugins/MagnumFontConverter/Test/MagnumFontConverterGLTest.cpp +++ b/src/MagnumPlugins/MagnumFontConverter/Test/MagnumFontConverterGLTest.cpp @@ -86,7 +86,7 @@ void MagnumFontConverterGLTest::exportFont() { return {16.0f, 25.0f, -10.0f, 39.7333f}; } Features doFeatures() const { return {}; } - std::unique_ptr doLayout(const GlyphCache&, Float, const std::string&) { return nullptr; } + Containers::Pointer doLayout(const GlyphCache&, Float, const std::string&) { return nullptr; } UnsignedInt doGlyphId(const char32_t character) { switch(character) { @@ -118,7 +118,7 @@ void MagnumFontConverterGLTest::exportFont() { cache.insert(font.glyphId(U'e'), {25, 12}, {{16, 4}, {64, 32}}); /* Convert the file */ - std::unique_ptr converter = _fontConverterManager.instantiate("MagnumFontConverter"); + Containers::Pointer converter = _fontConverterManager.instantiate("MagnumFontConverter"); converter->exportFontToFile(font, cache, Utility::Directory::join(MAGNUMFONTCONVERTER_TEST_WRITE_DIR, "font"), "Wave"); /* Verify font parameters */ @@ -131,7 +131,7 @@ void MagnumFontConverterGLTest::exportFont() { CORRADE_SKIP("TgaImporter plugin not enabled, not testing glyph cache contents"); /* Verify font image, no need to test image contents, as the image is garbage anyway */ - std::unique_ptr importer = _importerManager.instantiate("TgaImporter"); + Containers::Pointer importer = _importerManager.instantiate("TgaImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(MAGNUMFONTCONVERTER_TEST_WRITE_DIR, "font.tga"))); Containers::Optional image = importer->image2D(0); CORRADE_VERIFY(image); diff --git a/src/MagnumPlugins/ObjImporter/ObjImporter.cpp b/src/MagnumPlugins/ObjImporter/ObjImporter.cpp index 750002412..85a692abb 100644 --- a/src/MagnumPlugins/ObjImporter/ObjImporter.cpp +++ b/src/MagnumPlugins/ObjImporter/ObjImporter.cpp @@ -45,7 +45,7 @@ struct ObjImporter::File { std::unordered_map meshesForName; std::vector meshNames; std::vector> meshes; - std::unique_ptr in; + Containers::Pointer in; }; namespace { @@ -102,7 +102,7 @@ void ObjImporter::doClose() { _file.reset(); } bool ObjImporter::doIsOpened() const { return !!_file; } void ObjImporter::doOpenFile(const std::string& filename) { - std::unique_ptr in{new std::ifstream{filename, std::ios::binary}}; + Containers::Pointer in{new std::ifstream{filename, std::ios::binary}}; if(!in->good()) { Error() << "Trade::ObjImporter::openFile(): cannot open file" << filename; return; diff --git a/src/MagnumPlugins/ObjImporter/ObjImporter.h b/src/MagnumPlugins/ObjImporter/ObjImporter.h index 9e657bdf0..cb8e4d4dd 100644 --- a/src/MagnumPlugins/ObjImporter/ObjImporter.h +++ b/src/MagnumPlugins/ObjImporter/ObjImporter.h @@ -100,7 +100,7 @@ class MAGNUM_OBJIMPORTER_EXPORT ObjImporter: public AbstractImporter { MAGNUM_OBJIMPORTER_LOCAL void parseMeshNames(); - std::unique_ptr _file; + Containers::Pointer _file; }; }} diff --git a/src/MagnumPlugins/ObjImporter/Test/ObjImporterTest.cpp b/src/MagnumPlugins/ObjImporter/Test/ObjImporterTest.cpp index e54429c0c..01e6d1488 100644 --- a/src/MagnumPlugins/ObjImporter/Test/ObjImporterTest.cpp +++ b/src/MagnumPlugins/ObjImporter/Test/ObjImporterTest.cpp @@ -151,7 +151,7 @@ ObjImporterTest::ObjImporterTest() { } void ObjImporterTest::pointMesh() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "pointMesh.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 1); @@ -170,7 +170,7 @@ void ObjImporterTest::pointMesh() { } void ObjImporterTest::lineMesh() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "lineMesh.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 1); @@ -189,7 +189,7 @@ void ObjImporterTest::lineMesh() { } void ObjImporterTest::triangleMesh() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "triangleMesh.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 1); @@ -209,7 +209,7 @@ void ObjImporterTest::triangleMesh() { } void ObjImporterTest::mixedPrimitives() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "mixedPrimitives.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 1); @@ -220,7 +220,7 @@ void ObjImporterTest::mixedPrimitives() { } void ObjImporterTest::positionsOnly() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "triangleMesh.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 1); @@ -232,7 +232,7 @@ void ObjImporterTest::positionsOnly() { } void ObjImporterTest::textureCoordinates() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "textureCoordinates.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 1); @@ -260,7 +260,7 @@ void ObjImporterTest::textureCoordinates() { } void ObjImporterTest::normals() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "normals.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 1); @@ -288,7 +288,7 @@ void ObjImporterTest::normals() { } void ObjImporterTest::textureCoordinatesNormals() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "textureCoordinatesNormals.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 1); @@ -325,13 +325,13 @@ void ObjImporterTest::textureCoordinatesNormals() { } void ObjImporterTest::emptyFile() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "emptyFile.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 1); } void ObjImporterTest::unnamedMesh() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "emptyFile.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 1); CORRADE_COMPARE(importer->mesh3DName(0), ""); @@ -339,7 +339,7 @@ void ObjImporterTest::unnamedMesh() { } void ObjImporterTest::namedMesh() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "namedMesh.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 1); CORRADE_COMPARE(importer->mesh3DName(0), "MyMesh"); @@ -347,7 +347,7 @@ void ObjImporterTest::namedMesh() { } void ObjImporterTest::moreMeshes() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "moreMeshes.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 3); @@ -396,7 +396,7 @@ void ObjImporterTest::moreMeshes() { } void ObjImporterTest::unnamedFirstMesh() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "unnamedFirstMesh.obj"))); CORRADE_COMPARE(importer->mesh3DCount(), 2); @@ -408,7 +408,7 @@ void ObjImporterTest::unnamedFirstMesh() { } void ObjImporterTest::wrongFloat() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumbers.obj"))); const Int id = importer->mesh3DForName("WrongFloat"); CORRADE_VERIFY(id > -1); @@ -420,7 +420,7 @@ void ObjImporterTest::wrongFloat() { } void ObjImporterTest::wrongInteger() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumbers.obj"))); const Int id = importer->mesh3DForName("WrongInteger"); CORRADE_VERIFY(id > -1); @@ -432,7 +432,7 @@ void ObjImporterTest::wrongInteger() { } void ObjImporterTest::unmergedIndexOutOfRange() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumbers.obj"))); const Int id = importer->mesh3DForName("PositionIndexOutOfRange"); CORRADE_VERIFY(id > -1); @@ -444,7 +444,7 @@ void ObjImporterTest::unmergedIndexOutOfRange() { } void ObjImporterTest::mergedIndexOutOfRange() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumbers.obj"))); const Int id = importer->mesh3DForName("TextureIndexOutOfRange"); CORRADE_VERIFY(id > -1); @@ -456,7 +456,7 @@ void ObjImporterTest::mergedIndexOutOfRange() { } void ObjImporterTest::zeroIndex() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumbers.obj"))); const Int id = importer->mesh3DForName("ZeroIndex"); CORRADE_VERIFY(id > -1); @@ -468,7 +468,7 @@ void ObjImporterTest::zeroIndex() { } void ObjImporterTest::explicitOptionalPositionCoordinate() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "optionalCoordinates.obj"))); const Int id = importer->mesh3DForName("SupportedPositionW"); CORRADE_VERIFY(id > -1); @@ -482,7 +482,7 @@ void ObjImporterTest::explicitOptionalPositionCoordinate() { } void ObjImporterTest::explicitOptionalTextureCoordinate() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "optionalCoordinates.obj"))); const Int id = importer->mesh3DForName("SupportedTextureW"); CORRADE_VERIFY(id > -1); @@ -496,7 +496,7 @@ void ObjImporterTest::explicitOptionalTextureCoordinate() { } void ObjImporterTest::unsupportedOptionalPositionCoordinate() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "optionalCoordinates.obj"))); const Int id = importer->mesh3DForName("UnsupportedPositionW"); CORRADE_VERIFY(id > -1); @@ -508,7 +508,7 @@ void ObjImporterTest::unsupportedOptionalPositionCoordinate() { } void ObjImporterTest::unsupportedOptionalTextureCoordinate() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "optionalCoordinates.obj"))); const Int id = importer->mesh3DForName("UnsupportedTextureW"); CORRADE_VERIFY(id > -1); @@ -520,7 +520,7 @@ void ObjImporterTest::unsupportedOptionalTextureCoordinate() { } void ObjImporterTest::shortFloatData() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumberCount.obj"))); const Int id = importer->mesh3DForName("ShortFloat"); CORRADE_VERIFY(id > -1); @@ -532,7 +532,7 @@ void ObjImporterTest::shortFloatData() { } void ObjImporterTest::longFloatData() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumberCount.obj"))); const Int id = importer->mesh3DForName("LongFloat"); CORRADE_VERIFY(id > -1); @@ -544,7 +544,7 @@ void ObjImporterTest::longFloatData() { } void ObjImporterTest::longOptionalFloatData() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumberCount.obj"))); const Int id = importer->mesh3DForName("LongOptionalFloat"); CORRADE_VERIFY(id > -1); @@ -556,7 +556,7 @@ void ObjImporterTest::longOptionalFloatData() { } void ObjImporterTest::longIndexData() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumberCount.obj"))); const Int id = importer->mesh3DForName("InvalidIndices"); CORRADE_VERIFY(id > -1); @@ -568,7 +568,7 @@ void ObjImporterTest::longIndexData() { } void ObjImporterTest::wrongPointIndexData() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumberCount.obj"))); const Int id = importer->mesh3DForName("WrongPointIndices"); CORRADE_VERIFY(id > -1); @@ -580,7 +580,7 @@ void ObjImporterTest::wrongPointIndexData() { } void ObjImporterTest::wrongLineIndexData() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumberCount.obj"))); const Int id = importer->mesh3DForName("WrongLineIndices"); CORRADE_VERIFY(id > -1); @@ -592,7 +592,7 @@ void ObjImporterTest::wrongLineIndexData() { } void ObjImporterTest::wrongTriangleIndexData() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumberCount.obj"))); const Int id = importer->mesh3DForName("WrongTriangleIndices"); CORRADE_VERIFY(id > -1); @@ -604,7 +604,7 @@ void ObjImporterTest::wrongTriangleIndexData() { } void ObjImporterTest::polygonIndexData() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongNumberCount.obj"))); const Int id = importer->mesh3DForName("PolygonIndices"); CORRADE_VERIFY(id > -1); @@ -616,7 +616,7 @@ void ObjImporterTest::polygonIndexData() { } void ObjImporterTest::missingPositionData() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "missingData.obj"))); const Int id = importer->mesh3DForName("MissingPositionData"); CORRADE_VERIFY(id > -1); @@ -628,7 +628,7 @@ void ObjImporterTest::missingPositionData() { } void ObjImporterTest::missingPositionIndices() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "missingData.obj"))); const Int id = importer->mesh3DForName("MissingPositionIndices"); CORRADE_VERIFY(id > -1); @@ -640,7 +640,7 @@ void ObjImporterTest::missingPositionIndices() { } void ObjImporterTest::missingNormalData() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "missingData.obj"))); const Int id = importer->mesh3DForName("MissingNormalData"); CORRADE_VERIFY(id > -1); @@ -652,7 +652,7 @@ void ObjImporterTest::missingNormalData() { } void ObjImporterTest::missingNormalIndices() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "missingData.obj"))); const Int id = importer->mesh3DForName("MissingNormalIndices"); CORRADE_VERIFY(id > -1); @@ -664,7 +664,7 @@ void ObjImporterTest::missingNormalIndices() { } void ObjImporterTest::missingTextureCoordinateData() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "missingData.obj"))); const Int id = importer->mesh3DForName("MissingTextureData"); CORRADE_VERIFY(id > -1); @@ -676,7 +676,7 @@ void ObjImporterTest::missingTextureCoordinateData() { } void ObjImporterTest::missingTextureCoordinateIndices() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "missingData.obj"))); const Int id = importer->mesh3DForName("MissingTextureIndices"); CORRADE_VERIFY(id > -1); @@ -688,7 +688,7 @@ void ObjImporterTest::missingTextureCoordinateIndices() { } void ObjImporterTest::wrongNormalIndexCount() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongIndexCount.obj"))); const Int id = importer->mesh3DForName("ShortNormalIndices"); CORRADE_VERIFY(id > -1); @@ -700,7 +700,7 @@ void ObjImporterTest::wrongNormalIndexCount() { } void ObjImporterTest::wrongTextureCoordinateIndexCount() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "wrongIndexCount.obj"))); const Int id = importer->mesh3DForName("ShortTextureIndices"); CORRADE_VERIFY(id > -1); @@ -712,7 +712,7 @@ void ObjImporterTest::wrongTextureCoordinateIndexCount() { } void ObjImporterTest::unsupportedKeyword() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "keywords.obj"))); const Int id = importer->mesh3DForName("UnsupportedKeyword"); CORRADE_VERIFY(id > -1); @@ -729,7 +729,7 @@ void ObjImporterTest::unsupportedKeyword() { } void ObjImporterTest::unknownKeyword() { - std::unique_ptr importer = _manager.instantiate("ObjImporter"); + Containers::Pointer importer = _manager.instantiate("ObjImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(OBJIMPORTER_TEST_DIR, "keywords.obj"))); const Int id = importer->mesh3DForName("UnknownKeyword"); CORRADE_VERIFY(id > -1); diff --git a/src/MagnumPlugins/TgaImageConverter/Test/TgaImageConverterTest.cpp b/src/MagnumPlugins/TgaImageConverter/Test/TgaImageConverterTest.cpp index 511e73d84..a2fa2503d 100644 --- a/src/MagnumPlugins/TgaImageConverter/Test/TgaImageConverterTest.cpp +++ b/src/MagnumPlugins/TgaImageConverter/Test/TgaImageConverterTest.cpp @@ -102,21 +102,21 @@ void TgaImageConverterTest::wrongFormat() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr converter = _converterManager.instantiate("TgaImageConverter"); + Containers::Pointer converter = _converterManager.instantiate("TgaImageConverter"); const auto data = converter->exportToData(image); CORRADE_VERIFY(!data); CORRADE_COMPARE(out.str(), "Trade::TgaImageConverter::exportToData(): unsupported pixel format PixelFormat::RG8Unorm\n"); } void TgaImageConverterTest::rgb() { - std::unique_ptr converter = _converterManager.instantiate("TgaImageConverter"); + Containers::Pointer converter = _converterManager.instantiate("TgaImageConverter"); const auto data = converter->exportToData(OriginalRGB); CORRADE_VERIFY(data); if(!(_importerManager.loadState("TgaImporter") & PluginManager::LoadState::Loaded)) CORRADE_SKIP("TgaImporter plugin not enabled, can't test the result"); - std::unique_ptr importer = _importerManager.instantiate("TgaImporter"); + Containers::Pointer importer = _importerManager.instantiate("TgaImporter"); CORRADE_VERIFY(importer->openData(data)); Containers::Optional converted = importer->image2D(0); CORRADE_VERIFY(converted); @@ -129,14 +129,14 @@ void TgaImageConverterTest::rgb() { } void TgaImageConverterTest::rgba() { - std::unique_ptr converter = _converterManager.instantiate("TgaImageConverter"); + Containers::Pointer converter = _converterManager.instantiate("TgaImageConverter"); const auto data = converter->exportToData(OriginalRGBA); CORRADE_VERIFY(data); if(!(_importerManager.loadState("TgaImporter") & PluginManager::LoadState::Loaded)) CORRADE_SKIP("TgaImporter plugin not enabled, can't test the result"); - std::unique_ptr importer = _importerManager.instantiate("TgaImporter"); + Containers::Pointer importer = _importerManager.instantiate("TgaImporter"); CORRADE_VERIFY(importer->openData(data)); Containers::Optional converted = importer->image2D(0); CORRADE_VERIFY(converted); diff --git a/src/MagnumPlugins/TgaImporter/Test/TgaImporterTest.cpp b/src/MagnumPlugins/TgaImporter/Test/TgaImporterTest.cpp index cf37b9c18..70a9a78f6 100644 --- a/src/MagnumPlugins/TgaImporter/Test/TgaImporterTest.cpp +++ b/src/MagnumPlugins/TgaImporter/Test/TgaImporterTest.cpp @@ -80,7 +80,7 @@ TgaImporterTest::TgaImporterTest() { } void TgaImporterTest::openShort() { - std::unique_ptr importer = _manager.instantiate("TgaImporter"); + Containers::Pointer importer = _manager.instantiate("TgaImporter"); const char data[] = { 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; CORRADE_VERIFY(importer->openData(data)); @@ -91,7 +91,7 @@ void TgaImporterTest::openShort() { } void TgaImporterTest::paletted() { - std::unique_ptr importer = _manager.instantiate("TgaImporter"); + Containers::Pointer importer = _manager.instantiate("TgaImporter"); const char data[] = { 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; CORRADE_VERIFY(importer->openData(data)); @@ -102,7 +102,7 @@ void TgaImporterTest::paletted() { } void TgaImporterTest::compressed() { - std::unique_ptr importer = _manager.instantiate("TgaImporter"); + Containers::Pointer importer = _manager.instantiate("TgaImporter"); const char data[] = { 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; CORRADE_VERIFY(importer->openData(data)); @@ -113,7 +113,7 @@ void TgaImporterTest::compressed() { } void TgaImporterTest::colorBits16() { - std::unique_ptr importer = _manager.instantiate("TgaImporter"); + Containers::Pointer importer = _manager.instantiate("TgaImporter"); const char data[] = { 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0 }; CORRADE_VERIFY(importer->openData(data)); @@ -124,7 +124,7 @@ void TgaImporterTest::colorBits16() { } void TgaImporterTest::colorBits24() { - std::unique_ptr importer = _manager.instantiate("TgaImporter"); + Containers::Pointer importer = _manager.instantiate("TgaImporter"); const char data[] = { 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 3, 0, 24, 0, 1, 2, 3, 2, 3, 4, @@ -148,7 +148,7 @@ void TgaImporterTest::colorBits24() { } void TgaImporterTest::colorBits32() { - std::unique_ptr importer = _manager.instantiate("TgaImporter"); + Containers::Pointer importer = _manager.instantiate("TgaImporter"); const char data[] = { 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 3, 0, 32, 0, 1, 2, 3, 1, 2, 3, 4, 1, @@ -172,7 +172,7 @@ void TgaImporterTest::colorBits32() { } void TgaImporterTest::grayscaleBits8() { - std::unique_ptr importer = _manager.instantiate("TgaImporter"); + Containers::Pointer importer = _manager.instantiate("TgaImporter"); const char data[] = { 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 3, 0, 8, 0, 1, 2, @@ -191,7 +191,7 @@ void TgaImporterTest::grayscaleBits8() { } void TgaImporterTest::grayscaleBits16() { - std::unique_ptr importer = _manager.instantiate("TgaImporter"); + Containers::Pointer importer = _manager.instantiate("TgaImporter"); const char data[] = { 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0 }; CORRADE_VERIFY(importer->openData(data)); @@ -202,7 +202,7 @@ void TgaImporterTest::grayscaleBits16() { } void TgaImporterTest::useTwice() { - std::unique_ptr importer = _manager.instantiate("TgaImporter"); + Containers::Pointer importer = _manager.instantiate("TgaImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(TGAIMPORTER_TEST_DIR, "file.tga"))); /* Verify that the file is rewinded for second use */ diff --git a/src/MagnumPlugins/WavAudioImporter/Test/WavImporterTest.cpp b/src/MagnumPlugins/WavAudioImporter/Test/WavImporterTest.cpp index beedb9bcf..c784e528e 100644 --- a/src/MagnumPlugins/WavAudioImporter/Test/WavImporterTest.cpp +++ b/src/MagnumPlugins/WavAudioImporter/Test/WavImporterTest.cpp @@ -121,7 +121,7 @@ void WavImporterTest::wrongSize() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openData(Containers::Array(43))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): the file is too short: 43 bytes\n"); } @@ -130,7 +130,7 @@ void WavImporterTest::wrongSignature() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "wrongSignature.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): the file signature is invalid\n"); } @@ -139,7 +139,7 @@ void WavImporterTest::unsupportedFormat() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "unsupportedFormat.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): unsupported format Audio::WavAudioFormat::AdPcm\n"); } @@ -148,7 +148,7 @@ void WavImporterTest::unsupportedChannelCount() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "unsupportedChannelCount.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): PCM with unsupported channel count 6 with 8 bits per sample\n"); } @@ -157,7 +157,7 @@ void WavImporterTest::invalidPadding() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "invalidPadding.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): the file has improper size, expected 66 but got 73\n"); } @@ -166,7 +166,7 @@ void WavImporterTest::invalidLength() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "invalidLength.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): the file has improper size, expected 160844 but got 80444\n"); } @@ -175,13 +175,13 @@ void WavImporterTest::invalidDataChunk() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "invalidDataChunk.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): the file contains no data chunk\n"); } void WavImporterTest::invalidFactChunk() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "invalidFactChunk.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::Mono16); @@ -198,13 +198,13 @@ void WavImporterTest::mono4() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "mono4.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): unsupported format Audio::WavAudioFormat::AdPcm\n"); } void WavImporterTest::mono8() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "mono8.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::Mono8); @@ -217,7 +217,7 @@ void WavImporterTest::mono8() { } void WavImporterTest::mono8junk() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "mono8junk.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::Mono8); @@ -229,7 +229,7 @@ void WavImporterTest::mono8junk() { } void WavImporterTest::mono8ALaw() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "mono8ALaw.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::MonoALaw); @@ -243,7 +243,7 @@ void WavImporterTest::mono8ALaw() { } void WavImporterTest::mono8MuLaw() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "mono8MuLaw.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::MonoMuLaw); @@ -257,7 +257,7 @@ void WavImporterTest::mono8MuLaw() { } void WavImporterTest::mono16() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "mono16.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::Mono16); @@ -273,13 +273,13 @@ void WavImporterTest::stereo4() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo4.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): unsupported format Audio::WavAudioFormat::AdPcm\n"); } void WavImporterTest::stereo8() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo8.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::Stereo8); @@ -292,7 +292,7 @@ void WavImporterTest::stereo8() { } void WavImporterTest::stereo8ALaw() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo8ALaw.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::StereoALaw); @@ -306,7 +306,7 @@ void WavImporterTest::stereo8ALaw() { } void WavImporterTest::stereo8MuLaw() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo8MuLaw.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::StereoMuLaw); @@ -323,13 +323,13 @@ void WavImporterTest::stereo12() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo12.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): PCM with unsupported channel count 2 with 12 bits per sample\n"); } void WavImporterTest::stereo16() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo16.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::Stereo16); @@ -344,7 +344,7 @@ void WavImporterTest::stereo24() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo24.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): PCM with unsupported channel count 2 with 24 bits per sample\n"); } @@ -353,13 +353,13 @@ void WavImporterTest::stereo32() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo32.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): PCM with unsupported channel count 2 with 32 bits per sample\n"); } void WavImporterTest::mono32f() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "mono32f.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::MonoFloat); @@ -373,7 +373,7 @@ void WavImporterTest::mono32f() { } void WavImporterTest::stereo32f() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo32f.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::StereoFloat); @@ -387,7 +387,7 @@ void WavImporterTest::stereo32f() { } void WavImporterTest::stereo64f() { - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo64f.wav"))); CORRADE_COMPARE(importer->format(), BufferFormat::StereoDouble); @@ -407,7 +407,7 @@ void WavImporterTest::surround51Channel16() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "surround51Channel16.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): unsupported format Audio::WavAudioFormat::Extensible\n"); } @@ -416,7 +416,7 @@ void WavImporterTest::surround71Channel24() { std::ostringstream out; Error redirectError{&out}; - std::unique_ptr importer = _manager.instantiate("WavAudioImporter"); + Containers::Pointer importer = _manager.instantiate("WavAudioImporter"); CORRADE_VERIFY(!importer->openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "surround71Channel24.wav"))); CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): unsupported format Audio::WavAudioFormat::Extensible\n"); }