Home | Namespaces | Hierarchy | Alphabetical List | Class list | Files | Namespace Members | Class members | File members

IrrlichtDevice.h

Go to the documentation of this file.
00001 // Copyright (C) 2002-2008 Nikolaus Gebhardt
00002 // This file is part of the "Irrlicht Engine".
00003 // For conditions of distribution and use, see copyright notice in irrlicht.h
00004 
00005 #ifndef __I_IRRLICHT_DEVICE_H_INCLUDED__
00006 #define __I_IRRLICHT_DEVICE_H_INCLUDED__
00007 
00008 #include "IReferenceCounted.h"
00009 #include "dimension2d.h"
00010 #include "IVideoDriver.h"
00011 #include "EDriverTypes.h"
00012 #include "IEventReceiver.h"
00013 #include "ICursorControl.h"
00014 #include "IVideoModeList.h"
00015 #include "ITimer.h"
00016 #include "IOSOperator.h"
00017 
00018 namespace irr
00019 {
00020         class ILogger;
00021         class IEventReceiver;
00022 
00023         namespace io {
00024                 class IFileSystem;
00025         } // end namespace io
00026 
00027         namespace gui {
00028                 class IGUIEnvironment;
00029         } // end namespace gui
00030 
00031         namespace scene {
00032                 class ISceneManager;
00033         } // end namespace scene
00034 
00036 
00040         class IrrlichtDevice : public virtual IReferenceCounted
00041         {
00042         public:
00043 
00045                 virtual ~IrrlichtDevice() {}
00046 
00048 
00072                 virtual bool run() = 0;
00073 
00075 
00077                 virtual void yield() = 0;
00078 
00080 
00084                 virtual void sleep(u32 timeMs, bool pauseTimer=false) = 0;
00085 
00087 
00088                 virtual video::IVideoDriver* getVideoDriver() = 0;
00089 
00091 
00092                 virtual io::IFileSystem* getFileSystem() = 0;
00093 
00095 
00096                 virtual gui::IGUIEnvironment* getGUIEnvironment() = 0;
00097 
00099 
00100                 virtual scene::ISceneManager* getSceneManager() = 0;
00101 
00103 
00104                 virtual gui::ICursorControl* getCursorControl() = 0;
00105 
00107 
00108                 virtual ILogger* getLogger() = 0;
00109 
00111 
00119                 virtual video::IVideoModeList* getVideoModeList() = 0;
00120 
00122 
00127                 virtual IOSOperator* getOSOperator() = 0;
00128 
00130 
00133                 virtual ITimer* getTimer() = 0;
00134 
00136 
00137                 virtual void setWindowCaption(const wchar_t* text) = 0;
00138 
00140 
00155                 virtual bool isWindowActive() const = 0;
00156 
00158 
00159                 virtual void closeDevice() = 0;
00160 
00162 
00165                 virtual const c8* getVersion() const = 0;
00166 
00168 
00169                 virtual void setEventReceiver(IEventReceiver* receiver) = 0;
00170 
00172 
00173                 virtual IEventReceiver* getEventReceiver() = 0;
00174 
00176 
00181                 virtual void postEventFromUser(const SEvent& event) = 0;
00182 
00184 
00187                 virtual void setInputReceivingSceneManager(scene::ISceneManager* sceneManager) = 0;
00188 
00190 
00193                 virtual void setResizeAble(bool resize=false) = 0;
00194         };
00195 
00196 } // end namespace irr
00197 
00198 #endif
00199 

The Irrlicht Engine
The Irrlicht Engine Documentation © 2003-2008 by Nikolaus Gebhardt. Generated on Sun Jun 1 07:59:08 2008 by Doxygen (1.4.2)