-// Load an image file
-typedef void (* PFN_QERPLUG_LOADIMAGE) (const char *name, unsigned char **pic, int *width, int *height);
+class Image
+{
+public:
+virtual ~Image() = default;
+virtual void release() = 0;
+virtual byte* getRGBAPixels() const = 0;
+virtual unsigned int getWidth() const = 0;
+virtual unsigned int getHeight() const = 0;
+
+virtual int getSurfaceFlags() const {
+ return 0;
+}
+virtual int getContentFlags() const {
+ return 0;
+}
+virtual int getValue() const {
+ return 0;
+}
+};
+
+class ArchiveFile;