#ifndef OGSPRITE_H
#define OGSPRITE_H
#include "objgfx30.h"
class ogSprite {
protected:
void * image;
uInt32 imageSize;
ogRGBA* pal;
uInt32 width, height;
uInt32 bitDepth; // make this 32-bit just for alignment purposes
uInt32 RFP;
uInt32 GFP;
uInt32 BFP;
uInt32 AFP;
uInt32 RShift;
uInt32 GShift;
uInt32 BShift;
uInt32 AShift;
uInt32 tColour; // original transparent colour
uInt32 getPixel(void *);
void setPixel(void *, uInt32);
void unpackRGB(uInt32, uInt8&, uInt8&, uInt8&);
public:
ogSprite(void);
void get(ogSurface&, int32, int32, int32, int32);
uInt32 getHeight(void) { return height; }
uInt32 getSize(void);
uInt32 getWidth(void) { return width; }
bool load(const char *);
virtual bool loadFrom(const char *, uInt32);
virtual void put(ogSurface&, int32, int32);
bool save(const char *);
virtual bool saveTo(const char *, int32);
virtual ~ogSprite(void);
}; // ogSprite
#endif