Page principale   Liste des namespaces   Hiérarchie des classes   Liste par ordre alphabétique   Liste des composants   Liste des fichiers   Membres des namespaces   Composants   Déclarations  

ExManagerFog.h

Aller à la documentation de ce fichier.
00001 /************************************************************************/
00002 /* Ex Nihlo Engine by Hermanns Christophe                                                               */
00003 /************************************************************************/
00004 /* This program is free software; you can redistribute it and/or                */
00005 /* modify it under the terms of the GNU General Public License                  */
00006 /* as published by the Free Software Foundation; either version 2               */
00007 /* of the License, or (at your option) any later version.                               */
00008 /*                                                                                                                                              */
00009 /* This program is distributed in the hope that it will be useful,              */
00010 /* but WITHOUT ANY WARRANTY; without even the implied warranty of               */
00011 /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.                                 */
00012 /*                                                                                                                                              */
00013 /* See the GNU General Public License for more details.                                 */
00014 /*                                                                                                                                              */
00015 /* You should have received a copy of the GNU General Public License    */
00016 /* along with this program; if not, write to the Free Software                  */
00017 /* Foundation, Inc., 59 Temple Place - Suite 330,                                               */
00018 /* Boston, MA  02111-1307, USA.                                                                                 */
00019 /*                                                                                                                                              */
00020 /* If you use a important part of this code please send me a mail               */
00021 /* I just want to see where my code go thks :)                                                  */
00022 /************************************************************************/
00023 
00024 /************************************************************************/
00025 /* Contact                                                              */  
00026 /************************************************************************/
00027 /* ExNihilo Website :www.ploksoftware.org                               */
00028 /*                                                                      */
00029 /* Hermanns Christophe ExNihilo creator and main programmer             */
00030 /*                                                                      */
00031 /* Mail             : Data@ploksoftware.org                                                             */
00032 /* ICQ              : 8030901                                                                                   */
00033 /* MSN Messenger    : Data_7@hotmail.com                                                                */
00034 /*                                                                      */
00035 /* Benjamin Michotte Linux port, webmaster                              */
00036 /*                                                                      */
00037 /* Mail             :binny@ploksoftware.org                             */
00038 /*                                                                      */
00039 /************************************************************************/
00040 
00041 /************************************************************************/
00042 /* File Description                                                                                             */
00043 /************************************************************************/
00044 /* File Name   :InputActionList.h                                                                               */
00045 /*                                                                                                                                              */
00046 /* Star Date   :03/15/2002                                                                                              */
00047 /*                                                                                                                                              */
00048 /* Last Update :
00049  * $Id: ExManagerFog.h,v 1.8 2002/09/22 15:53:57 data Exp $
00050  *
00051  */
00052 
00053 #ifndef __EXMANAGERFOG_H__
00054 #define __EXMANAGERFOG_H__
00055 //--------------------------------
00056 // File to include
00057 //--------------------------------
00058 #include "ExDefine.h"
00059 #include "ExMath.h"
00060 #include "ExManager.h"
00061 //--------------------------------
00062 class ExManagerFog   : public ExManager
00063 {
00064 private:
00065 //--------------------------------
00066 // Variable
00067 //--------------------------------
00068         GLfloat m_FogColor[4];
00069         GLfloat m_StartPoint;
00070         GLfloat m_EndPoint;
00071         GLfloat m_Density;
00072         GLenum  m_FogAlgo;
00073         bool m_State;
00074 //--------------------------------
00075 // Singleton creation
00076 //--------------------------------
00077         static bool m_flag; 
00078         static ExManagerFog *m_instance;
00079         ExManagerFog(void);
00080         ~ExManagerFog(void);
00081 //--------------------------------
00082 public:
00083 //--------------------------------
00084 // Methode
00085 //--------------------------------
00086         static ExManagerFog*  CreateSingleton(void);
00087 
00088         void Reset(void);
00089         void Init(void){return;}
00090         ExCAction InputCommand(ExCCommand Command);
00091         ExCAction InputAction(ExCAction Action);
00092 
00093         void EnableFog(void);
00094         void DisableFog(void);
00095         inline bool GetState(void){return m_State;}
00096 
00097         void  SetFogColor(float R,float G,float B,float A);
00098         inline void SetFogColorR(float R);
00099         inline float GetFogColorR(void){return m_FogColor[0];}
00100         void  IncFogColorR(float inc);
00101         void  SetFogColorG(float G);
00102         inline float GetFogColorG(void){return m_FogColor[1];}
00103         void  IncFogColorG(float inc);
00104         void  SetFogColorB(float B);
00105         inline float GetFogColorB(void){return m_FogColor[2];}
00106         void  IncFogColorB(float inc);
00107         void  SetFogColorA(float A);
00108         inline float GetFogColorA(void){return m_FogColor[3];}
00109         void  IncFogColorA(float inc);
00110 
00111         void  SetStartPoint(float P);
00112         inline float GetStarPoint(void){return m_StartPoint;}
00113         void  IncStartPoint(float inc);
00114         
00115         void  SetEndPoint(float P);
00116         inline float GetEndPoint(void){return m_EndPoint;}
00117         void  IncEndPoint(float inc);
00118 
00119         void  SetDensity(float P);
00120         inline float GetDensity(void){return m_Density;}
00121         void  IncDensity(float inc);
00122 
00123         inline GLenum GetAlgo(void){return m_FogAlgo;}
00124         void SetAlgo(GLenum algo);
00125 
00126 
00127 //--------------------------------
00128 // Operator
00129 //--------------------------------
00130 //--------------------------------
00131 // friends
00132 //--------------------------------
00133 };
00134 #endif //__EXMANAGERFOG_H__

Généré le Tue Dec 10 18:18:11 2002 pour ExNihilo par doxygen1.3-rc1