ScummVM API documentation
engine.h
1/* ScummVM - Graphic Adventure Engine
2 *
3 * ScummVM is the legal property of its developers, whose names
4 * are too numerous to list here. Please refer to the COPYRIGHT
5 * file distributed with this source distribution.
6 *
7 * This program is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program. If not, see <http://www.gnu.org/licenses/>.
19 *
20 */
21
22#ifndef HPL1_ENGINE_H
23#define HPL1_ENGINE_H
24
25#include "hpl1/engine/ai/AI.h"
26#include "hpl1/engine/ai/AINodeContainer.h"
27#include "hpl1/engine/ai/AINodeGenerator.h"
28#include "hpl1/engine/ai/AStar.h"
29#include "hpl1/engine/ai/StateMachine.h"
30#include "hpl1/engine/game/Game.h"
31#include "hpl1/engine/game/GameTypes.h"
32#include "hpl1/engine/game/SaveGame.h"
33#include "hpl1/engine/game/ScriptFuncs.h"
34#include "hpl1/engine/game/Updateable.h"
35#include "hpl1/engine/game/Updater.h"
36#include "hpl1/engine/game/low_level_game_setup.h"
37#include "hpl1/engine/graphics/Animation.h"
38#include "hpl1/engine/graphics/AnimationTrack.h"
39#include "hpl1/engine/graphics/BackgroundImage.h"
40#include "hpl1/engine/graphics/Beam.h"
41#include "hpl1/engine/graphics/BillBoard.h"
42#include "hpl1/engine/graphics/Bone.h"
43#include "hpl1/engine/graphics/BoneState.h"
44#include "hpl1/engine/graphics/Color.h"
45#include "hpl1/engine/graphics/GPUProgram.h"
46#include "hpl1/engine/graphics/GfxObject.h"
47#include "hpl1/engine/graphics/Graphics.h"
48#include "hpl1/engine/graphics/GraphicsDrawer.h"
49#include "hpl1/engine/graphics/GraphicsTypes.h"
50#include "hpl1/engine/graphics/ImageEntityData.h"
51#include "hpl1/engine/graphics/LowLevelGraphics.h"
52#include "hpl1/engine/graphics/LowLevelPicture.h"
53#include "hpl1/engine/graphics/Material.h"
54#include "hpl1/engine/graphics/MaterialHandler.h"
55#include "hpl1/engine/graphics/Material_Additive.h"
56#include "hpl1/engine/graphics/Material_Alpha.h"
57#include "hpl1/engine/graphics/Material_BaseLight.h"
58#include "hpl1/engine/graphics/Material_Bump.h"
59#include "hpl1/engine/graphics/Material_BumpColorSpec.h"
60#include "hpl1/engine/graphics/Material_BumpSpec.h"
61#include "hpl1/engine/graphics/Material_BumpSpec2D.h"
62#include "hpl1/engine/graphics/Material_Diffuse.h"
63#include "hpl1/engine/graphics/Material_Diffuse2D.h"
64#include "hpl1/engine/graphics/Material_DiffuseAdditive2D.h"
65#include "hpl1/engine/graphics/Material_DiffuseAlpha2D.h"
66#include "hpl1/engine/graphics/Material_DiffuseSpec.h"
67#include "hpl1/engine/graphics/Material_EnvMap_Reflect.h"
68#include "hpl1/engine/graphics/Material_Fallback01_BaseLight.h"
69#include "hpl1/engine/graphics/Material_Fallback02_BaseLight.h"
70#include "hpl1/engine/graphics/Material_Flat.h"
71#include "hpl1/engine/graphics/Material_FontNormal.h"
72#include "hpl1/engine/graphics/Material_Modulative.h"
73#include "hpl1/engine/graphics/Material_ModulativeX2.h"
74#include "hpl1/engine/graphics/Material_Smoke2D.h"
75#include "hpl1/engine/graphics/Material_Water.h"
76#include "hpl1/engine/graphics/Mesh.h"
77#include "hpl1/engine/graphics/Mesh2d.h"
78#include "hpl1/engine/graphics/MeshCreator.h"
79#include "hpl1/engine/graphics/OcclusionQuery.h"
80#include "hpl1/engine/graphics/ParticleEmitter.h"
81#include "hpl1/engine/graphics/ParticleEmitter2D.h"
82#include "hpl1/engine/graphics/ParticleEmitter3D.h"
83#include "hpl1/engine/graphics/ParticleEmitter3D_UserData.h"
84#include "hpl1/engine/graphics/ParticleSystem3D.h"
85#include "hpl1/engine/graphics/RenderList.h"
86#include "hpl1/engine/graphics/RenderObject2D.h"
87#include "hpl1/engine/graphics/RenderState.h"
88#include "hpl1/engine/graphics/Renderable.h"
89#include "hpl1/engine/graphics/Renderer2D.h"
90#include "hpl1/engine/graphics/Renderer3D.h"
91#include "hpl1/engine/graphics/RendererPostEffects.h"
92#include "hpl1/engine/graphics/Skeleton.h"
93#include "hpl1/engine/graphics/SubMesh.h"
94#include "hpl1/engine/graphics/Texture.h"
95#include "hpl1/engine/graphics/VertexBuffer.h"
96#include "hpl1/engine/graphics/VideoStream.h"
97#include "hpl1/engine/graphics/bitmap2D.h"
98#include "hpl1/engine/graphics/font_data.h"
99#include "hpl1/engine/gui/Gui.h"
100#include "hpl1/engine/gui/GuiGfxElement.h"
101#include "hpl1/engine/gui/GuiMaterial.h"
102#include "hpl1/engine/gui/GuiMaterialBasicTypes.h"
103#include "hpl1/engine/gui/GuiPopUp.h"
104#include "hpl1/engine/gui/GuiPopUpMessageBox.h"
105#include "hpl1/engine/gui/GuiSet.h"
106#include "hpl1/engine/gui/GuiSkin.h"
107#include "hpl1/engine/gui/GuiTypes.h"
108#include "hpl1/engine/gui/Widget.h"
109#include "hpl1/engine/gui/WidgetBaseClasses.h"
110#include "hpl1/engine/gui/WidgetButton.h"
111#include "hpl1/engine/gui/WidgetCheckBox.h"
112#include "hpl1/engine/gui/WidgetComboBox.h"
113#include "hpl1/engine/gui/WidgetFrame.h"
114#include "hpl1/engine/gui/WidgetImage.h"
115#include "hpl1/engine/gui/WidgetLabel.h"
116#include "hpl1/engine/gui/WidgetListBox.h"
117#include "hpl1/engine/gui/WidgetSlider.h"
118#include "hpl1/engine/gui/WidgetTextBox.h"
119#include "hpl1/engine/gui/WidgetWindow.h"
120#include "hpl1/engine/impl/tinyXML/tinyxml.h"
121#include "hpl1/engine/input/Action.h"
122#include "hpl1/engine/input/ActionKeyboard.h"
123#include "hpl1/engine/input/ActionMouseButton.h"
124#include "hpl1/engine/input/Input.h"
125#include "hpl1/engine/input/InputDevice.h"
126#include "hpl1/engine/input/InputTypes.h"
127#include "hpl1/engine/input/Keyboard.h"
128#include "hpl1/engine/input/LowLevelInput.h"
129#include "hpl1/engine/input/Mouse.h"
130#include "hpl1/engine/math/BoundingVolume.h"
131#include "hpl1/engine/math/Frustum.h"
132#include "hpl1/engine/math/Math.h"
133#include "hpl1/engine/math/MathTypes.h"
134#include "hpl1/engine/math/MeshTypes.h"
135#include "hpl1/engine/math/PidController.h"
136#include "hpl1/engine/math/Quaternion.h"
137#include "hpl1/engine/math/Spring.h"
138#include "hpl1/engine/math/Vector2.h"
139#include "hpl1/engine/math/Vector3.h"
140#include "hpl1/engine/math/hplMatrix.h"
141#include "hpl1/engine/physics/Body2D.h"
142#include "hpl1/engine/physics/CharacterBody.h"
143#include "hpl1/engine/physics/CollideData.h"
144#include "hpl1/engine/physics/CollideData2D.h"
145#include "hpl1/engine/physics/CollideShape.h"
146#include "hpl1/engine/physics/Collider2D.h"
147#include "hpl1/engine/physics/LowLevelPhysics.h"
148#include "hpl1/engine/physics/Physics.h"
149#include "hpl1/engine/physics/PhysicsBody.h"
150#include "hpl1/engine/physics/PhysicsController.h"
151#include "hpl1/engine/physics/PhysicsJoint.h"
152#include "hpl1/engine/physics/PhysicsJointBall.h"
153#include "hpl1/engine/physics/PhysicsJointHinge.h"
154#include "hpl1/engine/physics/PhysicsJointScrew.h"
155#include "hpl1/engine/physics/PhysicsJointSlider.h"
156#include "hpl1/engine/physics/PhysicsMaterial.h"
157#include "hpl1/engine/physics/PhysicsWorld.h"
158#include "hpl1/engine/physics/SurfaceData.h"
159#include "hpl1/engine/resources/AnimationManager.h"
160#include "hpl1/engine/resources/ConfigFile.h"
161#include "hpl1/engine/resources/EntityLoader_Object.h"
162#include "hpl1/engine/resources/FileSearcher.h"
163#include "hpl1/engine/resources/FontManager.h"
164#include "hpl1/engine/resources/FrameBase.h"
165#include "hpl1/engine/resources/FrameBitmap.h"
166#include "hpl1/engine/resources/FrameTexture.h"
167#include "hpl1/engine/resources/GpuProgramManager.h"
168#include "hpl1/engine/resources/ImageEntityManager.h"
169#include "hpl1/engine/resources/ImageManager.h"
170#include "hpl1/engine/resources/LanguageFile.h"
171#include "hpl1/engine/resources/MaterialManager.h"
172#include "hpl1/engine/resources/MeshLoader.h"
173#include "hpl1/engine/resources/MeshLoaderHandler.h"
174#include "hpl1/engine/resources/MeshManager.h"
175#include "hpl1/engine/resources/ParticleManager.h"
176#include "hpl1/engine/resources/ResourceBase.h"
177#include "hpl1/engine/resources/ResourceImage.h"
178#include "hpl1/engine/resources/ResourceManager.h"
179#include "hpl1/engine/resources/Resources.h"
180#include "hpl1/engine/resources/ResourcesTypes.h"
181#include "hpl1/engine/resources/ScriptManager.h"
182#include "hpl1/engine/resources/SoundEntityManager.h"
183#include "hpl1/engine/resources/SoundManager.h"
184#include "hpl1/engine/resources/TextureManager.h"
185#include "hpl1/engine/resources/TileSetManager.h"
186#include "hpl1/engine/resources/VideoManager.h"
187#include "hpl1/engine/resources/low_level_resources.h"
188#include "hpl1/engine/scene/AnimationState.h"
189#include "hpl1/engine/scene/Area2D.h"
190#include "hpl1/engine/scene/Camera.h"
191#include "hpl1/engine/scene/Camera2D.h"
192#include "hpl1/engine/scene/Camera3D.h"
193#include "hpl1/engine/scene/ColliderEntity.h"
194#include "hpl1/engine/scene/Entity.h"
195#include "hpl1/engine/scene/Entity2D.h"
196#include "hpl1/engine/scene/Entity3D.h"
197#include "hpl1/engine/scene/GridMap2D.h"
198#include "hpl1/engine/scene/ImageEntity.h"
199#include "hpl1/engine/scene/Light.h"
200#include "hpl1/engine/scene/Light2D.h"
201#include "hpl1/engine/scene/Light2DPoint.h"
202#include "hpl1/engine/scene/Light3D.h"
203#include "hpl1/engine/scene/Light3DPoint.h"
204#include "hpl1/engine/scene/Light3DSpot.h"
205#include "hpl1/engine/scene/MeshEntity.h"
206#include "hpl1/engine/scene/MultiImageEntity.h"
207#include "hpl1/engine/scene/Node.h"
208#include "hpl1/engine/scene/Node2D.h"
209#include "hpl1/engine/scene/Node3D.h"
210#include "hpl1/engine/scene/NodeState.h"
211#include "hpl1/engine/scene/PortalContainer.h"
212#include "hpl1/engine/scene/RenderableContainer.h"
213#include "hpl1/engine/scene/Scene.h"
214#include "hpl1/engine/scene/SectorVisibility.h"
215#include "hpl1/engine/scene/SoundEntity.h"
216#include "hpl1/engine/scene/SoundSource.h"
217#include "hpl1/engine/scene/SubMeshEntity.h"
218#include "hpl1/engine/scene/Tile.h"
219#include "hpl1/engine/scene/TileData.h"
220#include "hpl1/engine/scene/TileLayer.h"
221#include "hpl1/engine/scene/TileMap.h"
222#include "hpl1/engine/scene/TileMapIt.h"
223#include "hpl1/engine/scene/TileMapLineIt.h"
224#include "hpl1/engine/scene/TileMapRectIt.h"
225#include "hpl1/engine/scene/TileSet.h"
226#include "hpl1/engine/scene/World2D.h"
227#include "hpl1/engine/scene/World3D.h"
228#include "hpl1/engine/sound/LowLevelSound.h"
229#include "hpl1/engine/sound/MusicHandler.h"
230#include "hpl1/engine/sound/Sound.h"
231#include "hpl1/engine/sound/SoundChannel.h"
232#include "hpl1/engine/sound/SoundData.h"
233#include "hpl1/engine/sound/SoundEntityData.h"
234#include "hpl1/engine/sound/SoundEnvironment.h"
235#include "hpl1/engine/sound/SoundHandler.h"
236#include "hpl1/engine/system/BinTree.h"
237#include "hpl1/engine/system/Container.h"
238#include "hpl1/engine/system/LogicTimer.h"
239#include "hpl1/engine/system/MemoryManager.h"
240#include "hpl1/engine/system/Script.h"
241#include "hpl1/engine/system/SerializeClass.h"
242#include "hpl1/engine/system/String.h"
243#include "hpl1/engine/system/System.h"
244#include "hpl1/engine/system/SystemTypes.h"
245#include "hpl1/engine/system/low_level_system.h"
246
247#endif