1
0
Fork 0
spectre/source/Graphics/ImageLoader.h
Henrik Hautakoski e10daeaaa6
Move everything from global namespace to "sp" namespace
When writing the X11 (linux) implementation there was a problem with X11 defining a "Display" type and we also have a Display class in the engine.

So to fix that problem and minimize the risk for running into other name conflicts. We move everything from global namespace.
2019-09-30 19:10:17 +02:00

37 lines
779 B
C++

#ifndef SPECTRE_GRAPHICS_IMAGE_LOADER_H
#define SPECTRE_GRAPHICS_IMAGE_LOADER_H
#include <Spectre/Graphics/Image.h>
#include <Spectre/Math/Vector2.h>
#include <vector>
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<unsigned char>& data);
bool encodeJPEG(const Image& img, std::vector<unsigned char>& data);
bool encodePNG(const Image& img, std::vector<unsigned char>& data);
protected :
std::string m_error;
};
} // namespace sp
#endif /* SPECTRE_GRAPHICS_IMAGE_LOADER_H */