Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

MultiResTexture Class Reference

#include <multitexture.h>

List of all members.

Public Member Functions

Texturefind (unsigned int resolution)
 MultiResTexture (const std::string &source, const std::string &path)
 MultiResTexture (ResourceHandle loTex, ResourceHandle medTex=InvalidResource, ResourceHandle hiTex=InvalidResource)
 MultiResTexture ()
void setTexture (const std::string &source, const std::string &path, float bumpHeight, unsigned int flags)
void setTexture (const std::string &source, const std::string &path, unsigned int flags=0)
 ~MultiResTexture ()

Public Attributes

ResourceHandle tex [3]


Constructor & Destructor Documentation

MultiResTexture::MultiResTexture  ) 
 

Definition at line 17 of file multitexture.cpp.

References hires, InvalidResource, lores, medres, and tex.

00018 {
00019     tex[lores] = InvalidResource;
00020     tex[medres] = InvalidResource;
00021     tex[hires] = InvalidResource;
00022 }

MultiResTexture::MultiResTexture ResourceHandle  loTex,
ResourceHandle  medTex = InvalidResource,
ResourceHandle  hiTex = InvalidResource
 

Definition at line 25 of file multitexture.cpp.

References hires, lores, medres, and tex.

00028 {
00029     tex[lores] = loTex;
00030     tex[medres] = medTex;
00031     tex[hires] = hiTex;
00032 }

MultiResTexture::MultiResTexture const std::string source,
const std::string path
 

Definition at line 35 of file multitexture.cpp.

References setTexture().

00037 {
00038     setTexture(source, path);
00039 }

MultiResTexture::~MultiResTexture  )  [inline]
 

Definition at line 34 of file multitexture.h.

00034 {};


Member Function Documentation

Texture * MultiResTexture::find unsigned int  resolution  ) 
 

Definition at line 62 of file multitexture.cpp.

References ResourceManager< T >::find(), GetTextureManager(), hires, lores, and tex.

Referenced by Renderer::loadTextures(), and Renderer::renderObject().

00063 {
00064     TextureManager* texMan = GetTextureManager();
00065     Texture* res = texMan->find(tex[resolution]);
00066     if (res != NULL)
00067         return res;
00068     if(resolution == lores)
00069         tex[resolution] = tex[resolution +1];
00070     else
00071         tex[resolution] = tex[resolution -1];
00072     res = texMan->find(tex[resolution]);
00073     if(res != NULL)
00074         return res;
00075     if(resolution == hires)
00076     return texMan->find(tex[lores]);
00077     else
00078         return texMan->find(tex[hires]);
00079 }

void MultiResTexture::setTexture const std::string source,
const std::string path,
float  bumpHeight,
unsigned int  flags
 

Definition at line 52 of file multitexture.cpp.

References ResourceManager< T >::getHandle(), GetTextureManager(), hires, lores, medres, and tex.

00054 {
00055     TextureManager* texMan = GetTextureManager();
00056     tex[lores] = texMan->getHandle(TextureInfo(source, path, bumpHeight, flags, lores));
00057     tex[medres] = texMan->getHandle(TextureInfo(source, path, bumpHeight, flags, medres));
00058     tex[hires] = texMan->getHandle(TextureInfo(source, path, bumpHeight, flags, hires));
00059 }

void MultiResTexture::setTexture const std::string source,
const std::string path,
unsigned int  flags = 0
 

Definition at line 42 of file multitexture.cpp.

References ResourceManager< T >::getHandle(), GetTextureManager(), hires, lores, medres, and tex.

Referenced by CreatePlanet(), and MultiResTexture().

00044 {
00045     TextureManager* texMan = GetTextureManager();
00046     tex[lores] = texMan->getHandle(TextureInfo(source, path, flags, lores));
00047     tex[medres] = texMan->getHandle(TextureInfo(source, path, flags, medres));
00048     tex[hires] = texMan->getHandle(TextureInfo(source, path, flags, hires));
00049 }


Member Data Documentation

ResourceHandle MultiResTexture::tex[3]
 

Definition at line 45 of file multitexture.h.

Referenced by find(), Renderer::loadTextures(), MultiResTexture(), Renderer::renderObject(), Renderer::renderStar(), and setTexture().


The documentation for this class was generated from the following files:
Generated on Sat Jan 14 22:33:28 2006 for Celestia by  doxygen 1.4.1