diff options
Diffstat (limited to '')
-rw-r--r-- | libraries/irrlicht-1.8.1/source/Irrlicht/CBSPMeshFileLoader.h | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/libraries/irrlicht-1.8.1/source/Irrlicht/CBSPMeshFileLoader.h b/libraries/irrlicht-1.8.1/source/Irrlicht/CBSPMeshFileLoader.h new file mode 100644 index 0000000..2845037 --- /dev/null +++ b/libraries/irrlicht-1.8.1/source/Irrlicht/CBSPMeshFileLoader.h | |||
@@ -0,0 +1,52 @@ | |||
1 | // Copyright (C) 2002-2012 Nikolaus Gebhardt | ||
2 | // This file is part of the "Irrlicht Engine". | ||
3 | // For conditions of distribution and use, see copyright notice in irrlicht.h | ||
4 | |||
5 | #ifndef __C_BSP_MESH_FILE_LOADER_H_INCLUDED__ | ||
6 | #define __C_BSP_MESH_FILE_LOADER_H_INCLUDED__ | ||
7 | |||
8 | #include "IMeshLoader.h" | ||
9 | #include "IFileSystem.h" | ||
10 | #include "IVideoDriver.h" | ||
11 | #include "ISceneManager.h" | ||
12 | #include "IQ3Shader.h" | ||
13 | |||
14 | namespace irr | ||
15 | { | ||
16 | namespace scene | ||
17 | { | ||
18 | |||
19 | //! Meshloader capable of loading Quake 3 BSP files and shaders | ||
20 | class CBSPMeshFileLoader : public IMeshLoader | ||
21 | { | ||
22 | public: | ||
23 | |||
24 | //! Constructor | ||
25 | CBSPMeshFileLoader(scene::ISceneManager* smgr, io::IFileSystem* fs); | ||
26 | |||
27 | //! destructor | ||
28 | virtual ~CBSPMeshFileLoader(); | ||
29 | |||
30 | //! returns true if the file maybe is able to be loaded by this class | ||
31 | //! based on the file extension (e.g. ".bsp") | ||
32 | virtual bool isALoadableFileExtension(const io::path& filename) const; | ||
33 | |||
34 | //! creates/loads an animated mesh from the file. | ||
35 | //! \return Pointer to the created mesh. Returns 0 if loading failed. | ||
36 | //! If you no longer need the mesh, you should call IAnimatedMesh::drop(). | ||
37 | //! See IReferenceCounted::drop() for more information. | ||
38 | virtual IAnimatedMesh* createMesh(io::IReadFile* file); | ||
39 | |||
40 | private: | ||
41 | |||
42 | io::IFileSystem* FileSystem; | ||
43 | scene::ISceneManager* SceneManager; | ||
44 | |||
45 | quake3::Q3LevelLoadParameter LoadParam; | ||
46 | }; | ||
47 | |||
48 | } // end namespace scene | ||
49 | } // end namespace irr | ||
50 | |||
51 | #endif | ||
52 | |||