Main Page | Class Hierarchy | Class List | Directories | File List | Class Members | Related Pages

texture.h

00001 /***************************************************************************
00002                           texture.h    -  description
00003             $Id: texture.h 3 2006-06-11 08:16:14Z neoneurone $
00004                              -------------------
00005     begin                : 2 jul 2004
00006     copyright            : (C) 2004-2005 by Duong-Khang NGUYEN
00007     email                : neoneurone @ users sourceforge net
00008  ***************************************************************************/
00009 
00010 /***************************************************************************
00011  *                                                                         *
00012  *   This program is free software; you can redistribute it and/or modify  *
00013  *   it under the terms of the GNU General Public License as published by  *
00014  *   the Free Software Foundation; either version 2 of the License, or     *
00015  *   any later version.                                                    *
00016  *                                                                         *
00017  ***************************************************************************/
00018 
00019 #if !defined(_OPENCITY_TEXTURE_H_)
00020     #define _OPENCITY_TEXTURE_ 1
00021 
00022     #include "main.h"
00023 
00024 
00025    //========================================================================
00030 class Texture {
00031 public:
00032     Texture();
00033     Texture( const string & rcFile );
00034 
00035     ~Texture();
00036 
00037 
00038    //========================================================================
00039    //                         STATIC    METHODS
00040    //========================================================================
00047     static const GLuint
00048     Load(
00049         const string & rcFile );
00050 
00051 
00058     static const GLuint
00059     Load(
00060         const string & rcFile,
00061         uint & ruiW,
00062         uint & ruiH );
00063 
00064 
00065 //========================================================================
00075     static SDL_Surface*
00076     HorizontalMirror(
00077         const SDL_Surface* const psurface
00078     );
00079 
00080 
00081 //========================================================================
00087     static void
00088     Surface2Texture(
00089         const SDL_Surface* const psurface,
00090         GLuint & ruiTexture );
00091 
00092 
00093    //========================================================================
00094    //                       PRIVATE STATIC METHODS
00095    //========================================================================
00096 
00097 private:
00098     uint uiWidth, uiHeight;
00099     GLuint uiTexture;
00100 
00105     static void
00106     GetCorrectSize(
00107         const uint w, const uint h,
00108         uint & rW,    uint & rH );
00109 
00110 
00111 };
00112 
00113 #endif
00114 
00115 
00116 
00117 
00118 
00119 
00120 
00121 
00122 
00123 
00124 
00125 
00126 
00127 
00128 
00129 
00130 
00131 
00132 
00133 
00134 
00135 
00136 
00137 
00138 
00139 
00140 
00141 
00142 
00143 
00144 
00145 

Generated on Sat Nov 11 10:21:10 2006 for OpenCity by  doxygen 1.4.2