diff options
author | Andrei Karas <akaras@inbox.ru> | 2016-05-27 22:17:47 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2016-05-27 22:17:47 +0300 |
commit | cd327e877804a824db51d1e0831ad9e13b0e18b3 (patch) | |
tree | 33388dbe50c78d11687c800363112fb9a3688eaf /src/resources/resourcemanager/resourcemanager.cpp | |
parent | c18d789b35f29611c88d0e3bdbb5619500ea7a2a (diff) | |
download | plus-cd327e877804a824db51d1e0831ad9e13b0e18b3.tar.gz plus-cd327e877804a824db51d1e0831ad9e13b0e18b3.tar.bz2 plus-cd327e877804a824db51d1e0831ad9e13b0e18b3.tar.xz plus-cd327e877804a824db51d1e0831ad9e13b0e18b3.zip |
Move rescaled images load function from resourcemanager into separate file.
Diffstat (limited to 'src/resources/resourcemanager/resourcemanager.cpp')
-rw-r--r-- | src/resources/resourcemanager/resourcemanager.cpp | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/src/resources/resourcemanager/resourcemanager.cpp b/src/resources/resourcemanager/resourcemanager.cpp index 2289fcffd..b2d4d483d 100644 --- a/src/resources/resourcemanager/resourcemanager.cpp +++ b/src/resources/resourcemanager/resourcemanager.cpp @@ -698,46 +698,6 @@ void ResourceManager::clearScheduled() BLOCK_END("ResourceManager::clearScheduled") } -struct RescaledLoader final -{ - ResourceManager *manager; - const Image *image; - int width; - int height; - static Resource *load(const void *const v) - { - if (!v) - return nullptr; - const RescaledLoader *const rl - = static_cast<const RescaledLoader *const>(v); - if (!rl->manager || !rl->image) - return nullptr; - Image *const rescaled = rl->image->SDLgetScaledImage( - rl->width, rl->height); - if (!rescaled) - { - reportAlways("Rescale image failed: %s", - rl->image->getIdPath().c_str()); - return nullptr; - } - return rescaled; - } -}; - -Image *ResourceManager::getRescaled(const Image *const image, - const int width, const int height) -{ - if (!image) - return nullptr; - - std::string idPath = image->getIdPath() + strprintf( - "_rescaled%dx%d", width, height); - const RescaledLoader rl = { this, image, width, height }; - Image *const img = static_cast<Image *const>( - get(idPath, RescaledLoader::load, &rl)); - return img; -} - void ResourceManager::clearCache() { cleanProtected(); |