Irrlicht 3D Engine
IQ3LevelMesh.h
Go to the documentation of this file.
00001 // Copyright (C) 2002-2012 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_Q3_LEVEL_MESH_H_INCLUDED__
00006 #define __I_Q3_LEVEL_MESH_H_INCLUDED__
00007 
00008 #include "IAnimatedMesh.h"
00009 #include "IQ3Shader.h"
00010 
00011 namespace irr
00012 {
00013 namespace scene
00014 {
00016 
00017     class IQ3LevelMesh : public IAnimatedMesh
00018     {
00019     public:
00020 
00022 
00024         virtual const quake3::IShader* getShader( const c8* filename, bool fileNameIsValid=true ) = 0;
00025 
00027         virtual const quake3::IShader* getShader(u32 index) const = 0;
00028 
00030         virtual quake3::tQ3EntityList& getEntityList() = 0;
00031 
00033 
00036         virtual IMesh* getBrushEntityMesh(s32 num) const = 0;
00037 
00039         virtual IMesh* getBrushEntityMesh(quake3::IEntity &ent) const = 0;
00040     };
00041 
00042 } // end namespace scene
00043 } // end namespace irr
00044 
00045 #endif
00046