Main Page   Namespace List   Class Hierarchy   Alphabetical List   Data Structures   File List   Data Fields   Globals  

ExManagerFog.h

Go to the documentation of this file.
00001 /*
00002  * ExNihilo 3D Engine
00003  * 
00004  *  This program is free software; you can redistribute it and/or modify
00005  *  it under the terms of the GNU General Public License as published by
00006  *  the Free Software Foundation; either version 2 of the License, or
00007  *  (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.  See the
00012  *  GNU Library General Public License for more details.
00013  *
00014  *  You should have received a copy of the GNU General Public License
00015  *  along with this program; if not, write to the Free Software
00016  *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
00017  *
00018  * Please read AUTHORS file !!!
00019  * 
00020  * $Id: ExManagerFog.h,v 1.5 2002/08/01 18:45:56 data Exp $
00021  *
00022  */
00023 
00024 #ifndef __EXMANAGERFOG_H__
00025 #define __EXMANAGERFOG_H__
00026 //--------------------------------
00027 // File to include
00028 //--------------------------------
00029 #include "ExDefine.h"
00030 #include "ExMath.h"
00031 #include "ExManagerId.h"
00032 //--------------------------------
00033 class ExManagerFog
00034 {
00035 private:
00036 //--------------------------------
00037 // Variable
00038 //--------------------------------
00039         ExManagerId                                             *ManagerId      ;
00040         GLfloat m_FogColor[4];
00041         GLfloat m_StartPoint;
00042         GLfloat m_EndPoint;
00043         GLfloat m_Density;
00044         GLenum  m_FogAlgo;
00045         bool m_State;
00046 public:
00047 //--------------------------------
00048 // Constructor // Destructor
00049 //--------------------------------
00050         ExManagerFog(void);
00051         ~ExManagerFog(void);
00052 //--------------------------------
00053 // Methode
00054 //--------------------------------
00055         std::ostrstream *Consol;
00056         void (*WriteToConsol)(const char *Label);
00057 
00058         inline void SetManagerId(ExManagerId *Id){ManagerId     = Id;}
00059 
00060         void Reset(void);
00061 
00062         void EnableFog(void);
00063         void DisableFog(void);
00064         inline bool GetState(void){return m_State;}
00065 
00066         void  SetFogColor(float R,float G,float B,float A);
00067         inline void SetFogColorR(float R);
00068         inline float GetFogColorR(void){return m_FogColor[0];}
00069         void  IncFogColorR(float inc);
00070         void  SetFogColorG(float G);
00071         inline float GetFogColorG(void){return m_FogColor[1];}
00072         void  IncFogColorG(float inc);
00073         void  SetFogColorB(float B);
00074         inline float GetFogColorB(void){return m_FogColor[2];}
00075         void  IncFogColorB(float inc);
00076         void  SetFogColorA(float A);
00077         inline float GetFogColorA(void){return m_FogColor[3];}
00078         void  IncFogColorA(float inc);
00079 
00080         void  SetStartPoint(float P);
00081         inline float GetStarPoint(void){return m_StartPoint;}
00082         void  IncStartPoint(float inc);
00083         
00084         void  SetEndPoint(float P);
00085         inline float GetEndPoint(void){return m_EndPoint;}
00086         void  IncEndPoint(float inc);
00087 
00088         void  SetDensity(float P);
00089         inline float GetDensity(void){return m_Density;}
00090         void  IncDensity(float inc);
00091 
00092         inline GLenum GetAlgo(void){return m_FogAlgo;}
00093         void SetAlgo(GLenum algo);
00094 //--------------------------------
00095 // Operator
00096 //--------------------------------
00097 //--------------------------------
00098 // friends
00099 //--------------------------------
00100 };
00101 #endif //__EXMANAGERFOG_H__

Generated on Tue Aug 6 20:27:13 2002 for ExNihilo by doxygen1.2.17