myglTexture.cpp myglTexture.h OpenArena #include"myglTexture.h" usingnamespaceOpenArena; namespaceOpenArena { Texture::Texture() { id=0xFFFFFFFF; filename=""; minFilter=GL_LINEAR; magFilter=GL_LINEAR; } Texture::~Texture() { Free(); } stringTexture::Filename() { returnfilename; } GLuintTexture::ID() { returnid; } boolTexture::Loaded() { returnfilename!=""; } boolTexture::Load(stringfn) { if(Loaded()) Free(); if(LoadGLTexture(fn.c_str(),id,minFilter,magFilter)) { filename=fn; returntrue; } else { id=0xFFFFFFFF; returnfalse; } } boolTexture::Load(stringfn,GLuintmin,GLuintmag) { if(Loaded()) Free(); if(LoadGLTexture(fn.c_str(),id,min,mag)) { filename=fn; minFilter=min; magFilter=mag; returntrue; } else { id=0xFFFFFFFF; returnfalse; } } voidTexture::Free() { if(Loaded()) { //Thisisonlytemporarilyremovedformacosx //TODOmakethisworkonalloperatingsystems //FreeGLTexture(id); minFilter=GL_LINEAR; magFilter=GL_LINEAR; filename=""; id=0xFFFFFFFF; } } boolTexture::operator<(constTexture&rtOp) { returnid<rtOp.id; } boolTexture::operator<=(constTexture&rtOp) { returnid<=rtOp.id; } boolTexture::operator==(constTexture&rtOp) { returnid==rtOp.id; } boolTexture::operator!=(constTexture&rtOp) { returnid!=rtOp.id; } boolTexture::operator>=(constTexture&rtOp) { returnid>=rtOp.id; } boolTexture::operator>(constTexture&rtOp) { returnid>rtOp.id; } };