summaryrefslogtreecommitdiffhomepage
path: root/loader-impl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'loader-impl.cpp')
-rw-r--r--loader-impl.cpp24
1 files changed, 12 insertions, 12 deletions
diff --git a/loader-impl.cpp b/loader-impl.cpp
index 2e82faf5..a0f316c8 100644
--- a/loader-impl.cpp
+++ b/loader-impl.cpp
@@ -2,11 +2,11 @@
#include "loader.hpp"
#include "atlas.hpp"
#include <Corrade/Containers/Optional.h>
+#include <Corrade/Containers/StringView.h>
#include <Corrade/PluginManager/PluginManager.h>
#include <Corrade/Utility/Resource.h>
#include <Magnum/Trade/AbstractImporter.h>
#include <Magnum/Trade/ImageData.h>
-#include <string>
#include <unordered_map>
#include <utility>
@@ -23,23 +23,23 @@ struct loader_impl final : loader_
std::unordered_map<std::string, atlas_ptr> atlas_map;
- std::string shader(const std::string& filename) override;
- Trade::ImageData2D tile_texture(const std::string& filename) override;
- atlas_ptr tile_atlas(const std::string& filename, Vector2i size) override;
+ std::string shader(const Containers::StringView& filename) override;
+ Trade::ImageData2D tile_texture(const Containers::StringView& filename) override;
+ atlas_ptr tile_atlas(const Containers::StringView& filename, Vector2i size) override;
explicit loader_impl();
~loader_impl() override;
};
-std::string loader_impl::shader(const std::string& filename)
+std::string loader_impl::shader(const Containers::StringView& filename)
{
- auto ret = shader_res.get(filename);
- if (ret.empty())
- ABORT("can't find shader resource '%s'", filename.c_str());
+ auto ret = shader_res.getString(filename);
+ if (ret.isEmpty())
+ ABORT("can't find shader resource '%s'", filename.cbegin());
return ret;
}
-atlas_ptr loader_impl::tile_atlas(const std::string& name, Vector2i size)
+atlas_ptr loader_impl::tile_atlas(const Containers::StringView& name, Vector2i size)
{
auto it = atlas_map.find(name);
if (it != atlas_map.end())
@@ -49,13 +49,13 @@ atlas_ptr loader_impl::tile_atlas(const std::string& name, Vector2i size)
return atlas;
}
-Trade::ImageData2D loader_impl::tile_texture(const std::string& filename)
+Trade::ImageData2D loader_impl::tile_texture(const Containers::StringView& filename)
{
if(!tga_importer || !tga_importer->openFile(filename))
- ABORT("can't open tile image '%s'", filename.c_str());
+ ABORT("can't open tile image '%s'", filename.cbegin());
auto img = tga_importer->image2D(0);
if (!img)
- ABORT("can't allocate tile image for '%s'", filename.c_str());
+ ABORT("can't allocate tile image for '%s'", filename.cbegin());
auto ret = std::move(*img);
return ret;
}