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

multitexture.h

Go to the documentation of this file.
00001 // multirestexture.h
00002 //
00003 // Copyright (C) 2002, Deon Ramsey
00004 //
00005 // This program is free software; you can redistribute it and/or
00006 // modify it under the terms of the GNU General Public License
00007 // as published by the Free Software Foundation; either version 2
00008 // of the License, or (at your option) any later version.
00009 
00010 #ifndef _CELENGINE_MULTITEXTURE_H_
00011 #define _CELENGINE_MULTITEXTURE_H_
00012 
00013 #include <string>
00014 #include "texture.h"
00015 #include <celutil/reshandle.h>
00016 
00017 #define TEXTURE_RESOLUTION 3
00018 
00019 enum {
00020     lores  = 0,
00021     medres = 1,
00022     hires  = 2
00023 };
00024 
00025 
00026 class MultiResTexture
00027 {
00028  public:
00029     MultiResTexture();
00030     MultiResTexture(ResourceHandle loTex,
00031                     ResourceHandle medTex = InvalidResource,
00032                     ResourceHandle hiTex = InvalidResource);
00033     MultiResTexture(const std::string& source, const std::string& path);
00034     ~MultiResTexture() {};
00035     void setTexture(const std::string& source,
00036                     const std::string& path,
00037                     unsigned int flags = 0);
00038     void setTexture(const std::string& source,
00039                     const std::string& path,
00040                     float bumpHeight,
00041                     unsigned int flags);
00042     Texture* find(unsigned int resolution);
00043 
00044  public:
00045     ResourceHandle tex[3];
00046 };
00047 
00048 #endif // _CELENGINE_MULTITEXTURE_H_

Generated on Sat Jan 14 22:30:27 2006 for Celestia by  doxygen 1.4.1