#ifndef SPECTRE_GRAPHICS_IMAGE_LOADER_H #define SPECTRE_GRAPHICS_IMAGE_LOADER_H #include #include #include namespace sp { class ImageLoader { public : bool loadFromFile(const char *filename, Image& img); bool loadFromMemory(const void *data, unsigned size, Image& img); bool saveToFile(const Image& img, const char *filename); protected : bool decode(const char* data, unsigned int len, Image& img); bool encode(Image& img, std::vector& data); bool encodeJPEG(const Image& img, std::vector& data); bool encodePNG(const Image& img, std::vector& data); protected : std::string m_error; }; } // namespace sp #endif /* SPECTRE_GRAPHICS_IMAGE_LOADER_H */