|
#ifndef OAG_OAGPCXTEXTURE_H
#define OAG_OAGPCXTEXTURE_H
#include "..\..\include\Texture\OAGTexture.h"
#ifdef _WIN32
#include <pshpack1.h>
#include <poppack.h>
#endif
#pragma pack(push, 1)
typedef struct _OAG_PCXHEADER
{
GLubyte manufacturer;
GLubyte version;
GLubyte encoding;
GLubyte bitsPerPixel;
GLushort xmin, ymin;
GLushort xmax, ymax;
GLushort horzRes, vertRes;
GLubyte palette[48];
GLubyte reserved;
GLubyte numColorPlanes;
GLushort bytesPerScanLine;
GLushort paletteType;
GLushort horzSize, vertSize;
GLubyte padding[54];
}OAG_PCXHEADER;
#pragma pack(pop)
namespace oag
{
class OAGPCXTexture : public oag::OAGTexture
{
public:
OAGPCXTexture(void);
virtual ~OAGPCXTexture(void);
//Attributes
private:
OAG_PCXHEADER m_pcxHeader;
//Operations
private:
bool ReadPCXFile (std::string strFileName);
void ReadPCX1bit (FILE *fp, OAG_PCXHEADER* hdr, OAG_TEXTURE* texinfo);
void ReadPCX4bits(FILE *fp, OAG_PCXHEADER* hdr, OAG_TEXTURE* texinfo);
void ReadPCX8bits(FILE *fp, OAG_PCXHEADER* hdr, OAG_TEXTURE* texinfo);
void ReadPCX24bits(FILE *fp, OAG_PCXHEADER* hdr, OAG_TEXTURE* texinfo);
public:
bool LoadTextureFromDisk(std::string strFileName); // Loads a file as a texture
void BuildTexture();
//void SetDefaultFilter();
};
};
#endif //OAG_OAGPCXTEXTURE_H
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
I live in Matão, a small city in Brazil. I studied as Programmer in a College for Software Development in Database.
After finishing the College I have been working with java, c# and Computer Graphics with searches for OpenGL.