C3DTask.h

Go to the documentation of this file.
00001 
00010 /* Copyright, 2004 Werewolf
00011  *
00012  * This file is part of Werewolf.
00013  * Werewolf is free software; you can redistribute it and/or modify
00014  * it under the terms of the GNU General Public License as published by
00015  * the Free Software Foundation; either version 2, or (at your option)
00016  * any later version.
00017 
00018  * Werewolf is distributed in the hope that it will be useful, but
00019  * WITHOUT ANY WARRANTY; without even the implied warranty of
00020  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00021  * General Public License for more details.
00022 
00023  * You should have received a copy of the GNU General Public License
00024  * along with Werewolf; see the file COPYING. If not, write to the
00025  * Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
00026  * MA 02111-1307, USA.
00027  */
00028 
00029 #ifndef __C3DTASK_H__
00030 #define __C3DTASK_H__
00031 
00032 //
00033 // System Includes
00034 //
00035 
00036 //
00037 // NeL Includes
00038 //
00039 #include <nel/3d/u_scene.h>
00040 #include <nel/3d/u_instance.h>
00041 #include <nel/3d/u_text_context.h>
00042 #include <nel/3d/u_texture.h>
00043 #include <nel/misc/rgba.h>
00044 
00045 //
00046 // Werewolf Includes
00047 //
00048 #include "wwcommon/ITask.h"
00049 #include "wwcommon/ISingleton.h"
00050 #include "wwcommon/CGenericObjectPool.h"
00051 
00052 //
00053 // Class
00054 //
00055 
00056 namespace WWCLIENT {
00057 
00058 class C3DTask : public WWCOMMON::ISingleton<C3DTask>, public WWCOMMON::ITask {
00059 public:
00067     virtual void init();
00068 
00077     virtual void update();
00078 
00090     virtual void render();
00091     virtual void release();         
00092     virtual std::string name();
00093 
00094     NL3D::UDriver       &driver() const;
00095     NL3D::UScene        &scene() const; 
00096     NL3D::UTextContext  &textContext() const;
00097 
00105     void captureCursor(bool b);
00106 
00113     void clear();
00114 
00122     void clearColor(NLMISC::CRGBA color);
00123 
00124     uint16 getScreenWidth();
00125     uint16 getScreenHeight();
00126 
00127 private:
00135     NL3D::UDriver               *m_Driver;
00136 
00142     NL3D::UTextContext  *m_TextContext;
00143 
00149     NL3D::UScene                *m_Scene;
00150 
00151     uint16                          m_ScreenWidth;  
00152     uint16                          m_ScreenHeight; 
00153     NLMISC::CRGBA               m_AmbientColor;
00154     NLMISC::CRGBA               m_ClearColor;       
00155 };
00156 
00157 }; // END NAMESPACE WWCLIENT
00158 
00159 #endif // __C3DTASK_H__

Generated on Mon Jan 11 12:03:38 2010 for Werewolf by  doxygen 1.6.1