]> git.lizzy.rs Git - irrlicht.git/commitdiff
Drop IImageLoader::loadImages as only IImageLoader::loadImage is usable
authornumzero <numzer0@yandex.ru>
Fri, 7 Apr 2023 22:23:20 +0000 (01:23 +0300)
committersfan5 <sfan5@live.de>
Sat, 8 Apr 2023 17:07:16 +0000 (19:07 +0200)
include/IImageLoader.h
source/Irrlicht/CNullDriver.cpp

index 13eef9777215b57cf2d2b12ec60ef5ca1bae1526..61552afb72414782c4526b8b2b7beef741ea5b3d 100644 (file)
@@ -45,17 +45,6 @@ public:
        /** \param file File handle to check.\r
        \return Pointer to newly created image, or 0 upon error. */\r
        virtual IImage* loadImage(io::IReadFile* file) const = 0;\r
-\r
-       //! Creates a multiple surfaces from the file eg. whole cube map.\r
-       /** \param file File handle to check.\r
-       \param type Pointer to E_TEXTURE_TYPE where a recommended type of the texture will be stored.\r
-       \return Array of pointers to newly created images. */\r
-       virtual core::array<IImage*> loadImages(io::IReadFile* file, E_TEXTURE_TYPE* type) const\r
-       {\r
-               core::array<IImage*> image;\r
-\r
-               return image;\r
-       }\r
 };\r
 \r
 \r
index a02431cf8f51b44d2032619129786a05d6d53bc7..d3b72804f18ca83ea70dcb8acb1109982b089061 100644 (file)
@@ -1196,57 +1196,33 @@ core::array<IImage*> CNullDriver::createImagesFromFile(io::IReadFile* file, E_TE
 \r
        core::array<IImage*> imageArray;\r
 \r
-       if (file)\r
-       {\r
-               s32 i;\r
-\r
-               // try to load file based on file extension\r
-               for (i = SurfaceLoader.size() - 1; i >= 0; --i)\r
-               {\r
-                       if (SurfaceLoader[i]->isALoadableFileExtension(file->getFileName()))\r
-                       {\r
-                               // reset file position which might have changed due to previous loadImage calls\r
-                               file->seek(0);\r
-                               imageArray = SurfaceLoader[i]->loadImages(file, type);\r
-\r
-                               if (imageArray.size() == 0)\r
-                               {\r
-                                       file->seek(0);\r
-                                       IImage* image = SurfaceLoader[i]->loadImage(file);\r
+       if (!file)\r
+               return imageArray;\r
 \r
-                                       if (image)\r
-                                               imageArray.push_back(image);\r
-                               }\r
+       // try to load file based on file extension\r
+       for (int i = SurfaceLoader.size() - 1; i >= 0; --i) {\r
+               if (!SurfaceLoader[i]->isALoadableFileExtension(file->getFileName()))\r
+                       continue;\r
 \r
-                               if (imageArray.size() > 0)\r
-                                       return imageArray;\r
-                       }\r
+               file->seek(0); // reset file position which might have changed due to previous loadImage calls\r
+               if (IImage *image = SurfaceLoader[i]->loadImage(file)) {\r
+                       imageArray.push_back(image);\r
+                       return imageArray;\r
                }\r
+       }\r
 \r
-               // try to load file based on what is in it\r
-               for (i = SurfaceLoader.size() - 1; i >= 0; --i)\r
-               {\r
-                       // dito\r
-                       file->seek(0);\r
-                       if (SurfaceLoader[i]->isALoadableFileFormat(file)\r
-                               && !SurfaceLoader[i]->isALoadableFileExtension(file->getFileName())     // extension was tried above already\r
-                               )\r
-                       {\r
-                               file->seek(0);\r
-                               imageArray = SurfaceLoader[i]->loadImages(file, type);\r
-\r
-                               if (imageArray.size() == 0)\r
-                               {\r
-                                       file->seek(0);\r
-                                       IImage* image = SurfaceLoader[i]->loadImage(file);\r
-\r
-                                       if (image)\r
-                                               imageArray.push_back(image);\r
-                               }\r
+       // try to load file based on what is in it\r
+       for (int i = SurfaceLoader.size() - 1; i >= 0; --i) {\r
+               if (SurfaceLoader[i]->isALoadableFileExtension(file->getFileName()))\r
+                       continue; // extension was tried above already\r
+               file->seek(0); // dito\r
+               if (!SurfaceLoader[i]->isALoadableFileFormat(file))\r
+                       continue;\r
 \r
-                               if (imageArray.size() > 0)\r
-                                       return imageArray;\r
-                       }\r
+               file->seek(0);\r
+               if (IImage *image = SurfaceLoader[i]->loadImage(file)) {\r
+                       imageArray.push_back(image);\r
+                       return imageArray;\r
                }\r
        }\r
 \r