#ifndef DDSREADER_H
#define DDSREADER_H

#include "./../../lib/GLee/GLee.h"	

#include <ddraw.h>
#include <cassert>
#include <string>
#include <vector>
using namespace std;


///Holds data loaded from DDS file
struct DDSdata
{
    GLsizei  width;
    GLsizei  height;
    GLint    components;
    GLenum   format;
    int      numMipMaps;
	vector<GLubyte> pixels;
};

///Reads DDS image files.
/**
*	DDSreader reads *.DDS files
*/
class DDSreader
{
private:
	DDSreader();	//cannot be initialized
public:
	static bool readDDSfile(const string& path, DDSdata& dstData);
	static unsigned int loadDDSfile( DDSdata& srcData, GLint interpolation =GL_LINEAR );
};
#endif