X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fgraphics%2Fimageloader.h;h=d824291eb65086aefdad641e2d9ef5dbca873a56;hb=b99a9eb342d0f6ba5509c6d9f8ab0b0b5d5d2979;hp=ca69459f22601dcd2ee520f419b3881c279c42dc;hpb=507fa60f32bd3f64840a2cdd1be5d68478432b55;p=libs%2Fgui.git diff --git a/source/graphics/imageloader.h b/source/graphics/imageloader.h index ca69459..d824291 100644 --- a/source/graphics/imageloader.h +++ b/source/graphics/imageloader.h @@ -2,24 +2,25 @@ #define MSP_GRAPHICS_IMAGELOADER_H_ #include "image.h" +#include "mspgui_api.h" namespace Msp { namespace Graphics { -class unsupported_image_format: public std::runtime_error +class MSPGUI_API unsupported_image_format: public std::runtime_error { public: unsupported_image_format(const std::string &w): std::runtime_error(w) { } }; -class bad_image_data: public std::runtime_error +class MSPGUI_API bad_image_data: public std::runtime_error { public: bad_image_data(const std::string &w): std::runtime_error(w) { } }; -class ImageLoader +class MSPGUI_API ImageLoader { public: enum State @@ -33,9 +34,9 @@ protected: class RegisterBase { protected: - RegisterBase() { } + RegisterBase() = default; public: - virtual ~RegisterBase() { } + virtual ~RegisterBase() = default; virtual unsigned get_signature_size() const = 0; virtual bool detect(const std::string &) const = 0; @@ -53,7 +54,7 @@ protected: struct Registry { - std::list loaders; + std::vector loaders; bool changed = false; ~Registry(); @@ -85,8 +86,6 @@ public: static void register_loader(); private: static Registry &get_registry(); - - static bool signature_size_compare(RegisterBase *, RegisterBase *); }; template