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 Documentation © 2003-2010 by Nikolaus Gebhardt. Generated on Sun Oct 24 12:41:57 2010 by Doxygen (1.6.2)