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

irrlicht.h

Go to the documentation of this file.
00001 /* irrlicht.h -- interface of the 'Irrlicht Engine'
00002 
00003   Copyright (C) 2002-2010 Nikolaus Gebhardt
00004 
00005   This software is provided 'as-is', without any express or implied
00006   warranty.  In no event will the authors be held liable for any damages
00007   arising from the use of this software.
00008 
00009   Permission is granted to anyone to use this software for any purpose,
00010   including commercial applications, and to alter it and redistribute it
00011   freely, subject to the following restrictions:
00012 
00013   1. The origin of this software must not be misrepresented; you must not
00014      claim that you wrote the original software. If you use this software
00015      in a product, an acknowledgment in the product documentation would be
00016      appreciated but is not required.
00017   2. Altered source versions must be plainly marked as such, and must not be
00018      misrepresented as being the original software.
00019   3. This notice may not be removed or altered from any source distribution.
00020 
00021   Please note that the Irrlicht Engine is based in part on the work of the
00022   Independent JPEG Group, the zlib and the libPng. This means that if you use
00023   the Irrlicht Engine in your product, you must acknowledge somewhere in your
00024   documentation that you've used the IJG code. It would also be nice to mention
00025   that you use the Irrlicht Engine, the zlib and libPng. See the README files
00026   in the jpeglib, the zlib and libPng for further informations.
00027 */
00028 
00029 #ifndef __IRRLICHT_H_INCLUDED__
00030 #define __IRRLICHT_H_INCLUDED__
00031 
00032 #include "IrrCompileConfig.h"
00033 #include "aabbox3d.h"
00034 #include "CDynamicMeshBuffer.h"
00035 #include "CIndexBuffer.h"
00036 #include "CMeshBuffer.h"
00037 #include "coreutil.h"
00038 #include "CVertexBuffer.h"
00039 #include "dimension2d.h"
00040 #include "ECullingTypes.h"
00041 #include "EDebugSceneTypes.h"
00042 #include "EDriverFeatures.h"
00043 #include "EDriverTypes.h"
00044 #include "EGUIAlignment.h"
00045 #include "EGUIElementTypes.h"
00046 #include "EHardwareBufferFlags.h"
00047 #include "EMaterialFlags.h"
00048 #include "EMaterialTypes.h"
00049 #include "EMeshWriterEnums.h"
00050 #include "EMessageBoxFlags.h"
00051 #include "ESceneNodeAnimatorTypes.h"
00052 #include "ESceneNodeTypes.h"
00053 #include "ETerrainElements.h"
00054 #include "fast_atof.h"
00055 #include "heapsort.h"
00056 #include "IAnimatedMesh.h"
00057 #include "IAnimatedMeshMD2.h"
00058 #include "IAnimatedMeshMD3.h"
00059 #include "IAnimatedMeshSceneNode.h"
00060 #include "IAttributeExchangingObject.h"
00061 #include "IAttributes.h"
00062 #include "IBillboardSceneNode.h"
00063 #include "IBillboardTextSceneNode.h"
00064 #include "IBoneSceneNode.h"
00065 #include "ICameraSceneNode.h"
00066 #include "ICursorControl.h"
00067 #include "IDummyTransformationSceneNode.h"
00068 #include "IDynamicMeshBuffer.h"
00069 #include "IEventReceiver.h"
00070 #include "IFileList.h"
00071 #include "IFileSystem.h"
00072 #include "IGeometryCreator.h"
00073 #include "IGPUProgrammingServices.h"
00074 #include "IGUIButton.h"
00075 #include "IGUICheckBox.h"
00076 #include "IGUIColorSelectDialog.h"
00077 #include "IGUIComboBox.h"
00078 #include "IGUIContextMenu.h"
00079 #include "IGUIEditBox.h"
00080 #include "IGUIElement.h"
00081 #include "IGUIElementFactory.h"
00082 #include "IGUIEnvironment.h"
00083 #include "IGUIFileOpenDialog.h"
00084 #include "IGUIFont.h"
00085 #include "IGUIFontBitmap.h"
00086 #include "IGUIImage.h"
00087 #include "IGUIInOutFader.h"
00088 #include "IGUIListBox.h"
00089 #include "IGUIMeshViewer.h"
00090 #include "IGUIScrollBar.h"
00091 #include "IGUISkin.h"
00092 #include "IGUISpinBox.h"
00093 #include "IGUISpriteBank.h"
00094 #include "IGUIStaticText.h"
00095 #include "IGUITabControl.h"
00096 #include "IGUITable.h"
00097 #include "IGUIToolbar.h"
00098 #include "IGUIWindow.h"
00099 #include "IGUITreeView.h"
00100 #include "IImage.h"
00101 #include "IImageLoader.h"
00102 #include "IImageWriter.h"
00103 #include "IIndexBuffer.h"
00104 #include "ILightSceneNode.h"
00105 #include "ILogger.h"
00106 #include "IMaterialRenderer.h"
00107 #include "IMaterialRendererServices.h"
00108 #include "IMesh.h"
00109 #include "IMeshBuffer.h"
00110 #include "IMeshCache.h"
00111 #include "IMeshLoader.h"
00112 #include "IMeshManipulator.h"
00113 #include "IMeshSceneNode.h"
00114 #include "IMeshWriter.h"
00115 #include "IMetaTriangleSelector.h"
00116 #include "IOSOperator.h"
00117 #include "IParticleSystemSceneNode.h" // also includes all emitters and attractors
00118 #include "IQ3LevelMesh.h"
00119 #include "IQ3Shader.h"
00120 #include "IReadFile.h"
00121 #include "IReferenceCounted.h"
00122 #include "irrArray.h"
00123 #include "IrrlichtDevice.h"
00124 #include "irrList.h"
00125 #include "irrMap.h"
00126 #include "irrMath.h"
00127 #include "irrString.h"
00128 #include "irrTypes.h"
00129 #include "path.h"
00130 #include "irrXML.h"
00131 #include "ISceneCollisionManager.h"
00132 #include "ISceneManager.h"
00133 #include "ISceneNode.h"
00134 #include "ISceneNodeAnimator.h"
00135 #include "ISceneNodeAnimatorCameraFPS.h"
00136 #include "ISceneNodeAnimatorCameraMaya.h"
00137 #include "ISceneNodeAnimatorCollisionResponse.h"
00138 #include "ISceneNodeAnimatorFactory.h"
00139 #include "ISceneNodeFactory.h"
00140 #include "ISceneUserDataSerializer.h"
00141 #include "IShaderConstantSetCallBack.h"
00142 #include "IShadowVolumeSceneNode.h"
00143 #include "ISkinnedMesh.h"
00144 #include "ITerrainSceneNode.h"
00145 #include "ITextSceneNode.h"
00146 #include "ITexture.h"
00147 #include "ITimer.h"
00148 #include "ITriangleSelector.h"
00149 #include "IVertexBuffer.h"
00150 #include "IVideoDriver.h"
00151 #include "IVideoModeList.h"
00152 #include "IVolumeLightSceneNode.h"
00153 #include "IWriteFile.h"
00154 #include "IXMLReader.h"
00155 #include "IXMLWriter.h"
00156 #include "ILightManager.h"
00157 #include "Keycodes.h"
00158 #include "line2d.h"
00159 #include "line3d.h"
00160 #include "matrix4.h"
00161 #include "plane3d.h"
00162 #include "position2d.h"
00163 #include "quaternion.h"
00164 #include "rect.h"
00165 #include "S3DVertex.h"
00166 #include "SAnimatedMesh.h"
00167 #include "SceneParameters.h"
00168 #include "SColor.h"
00169 #include "SExposedVideoData.h"
00170 #include "SIrrCreationParameters.h"
00171 #include "SKeyMap.h"
00172 #include "SLight.h"
00173 #include "SMaterial.h"
00174 #include "SMesh.h"
00175 #include "SMeshBuffer.h"
00176 #include "SMeshBufferLightMap.h"
00177 #include "SMeshBufferTangents.h"
00178 #include "SParticle.h"
00179 #include "SSharedMeshBuffer.h"
00180 #include "SSkinMeshBuffer.h"
00181 #include "SVertexIndex.h"
00182 #include "SViewFrustum.h"
00183 #include "triangle3d.h"
00184 #include "vector2d.h"
00185 #include "vector3d.h"
00186 
00298 #include "SIrrCreationParameters.h"
00299 
00301 namespace irr
00302 {
00304 
00321         extern "C" IRRLICHT_API IrrlichtDevice* IRRCALLCONV createDevice(
00322                 video::E_DRIVER_TYPE deviceType = video::EDT_SOFTWARE,
00323                 // parantheses are necessary for some compilers
00324                 const core::dimension2d<u32>& windowSize = (core::dimension2d<u32>(640,480)),
00325                 u32 bits = 16,
00326                 bool fullscreen = false,
00327                 bool stencilbuffer = false,
00328                 bool vsync = false,
00329                 IEventReceiver* receiver = 0);
00330 
00332         typedef IrrlichtDevice* (IRRCALLCONV *funcptr_createDevice )(
00333                         video::E_DRIVER_TYPE deviceType,
00334                         const core::dimension2d<u32>& windowSize,
00335                         u32 bits,
00336                         bool fullscreen,
00337                         bool stencilbuffer,
00338                         bool vsync,
00339                         IEventReceiver* receiver);
00340 
00341 
00343 
00350         extern "C" IRRLICHT_API IrrlichtDevice* IRRCALLCONV createDeviceEx(
00351                 const SIrrlichtCreationParameters& parameters);
00352 
00354         typedef IrrlichtDevice* (IRRCALLCONV *funcptr_createDeviceEx )( const SIrrlichtCreationParameters& parameters );
00355 
00356 
00357         // THE FOLLOWING IS AN EMPTY LIST OF ALL SUB NAMESPACES
00358         // EXISTING ONLY FOR THE DOCUMENTATION SOFTWARE DOXYGEN.
00359 
00361         namespace core
00362         {
00363         }
00364 
00366         namespace gui
00367         {
00368         }
00369 
00371         namespace io
00372         {
00373         }
00374 
00376         namespace scene
00377         {
00378         }
00379 
00381         namespace video
00382         {
00383         }
00384 }
00385 
00390 #endif
00391 

The Irrlicht Engine
The Irrlicht Engine Documentation © 2003-2010 by Nikolaus Gebhardt. Generated on Sun Oct 24 12:41:57 2010 by Doxygen (1.6.2)