#ifndef XGFXIMAGE_H
#define XGFXIMAGE_H

#include "xasset.h"
#include "xcardmemory.h"
#include "xgfxtexture.h"
#include "xmaptype.h"

#include <QString>

class XGfxImage : public XAsset
{
public:
    explicit XGfxImage();

    virtual void ParseData(QDataStream* aStream) override;
    virtual void Clear() override;

private:
    XMapType mMapType;
    XGfxTexture mTexture;
    quint8 mSemantic;
    XCardMemory mCardMemory;
    quint16 mWidth;
    quint16 mHeight;
    quint16 mDepth;
    quint8 mCategory;
    bool mDelayLoadPixels;

    qint32 mPixelsPtr;
    quint8 *mPixels;

    unsigned int mBaseSize;
    quint16 mStreamSlot;
    bool mStreaming;

    qint32 mNamePtr;
    QString mName;
};

#endif // XGFXIMAGE_H
