git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6000 dfc29bdd-3216-0410-991c-e03cc46cb475
		
			
				
	
	
		
			62 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| // Copyright (C) 2002-2012 Nikolaus Gebhardt
 | |
| // This file is part of the "Irrlicht Engine".
 | |
| // For conditions of distribution and use, see copyright notice in irrlicht.h
 | |
| 
 | |
| #ifndef __IRR_IRR_MESH_WRITER_H_INCLUDED__
 | |
| #define __IRR_IRR_MESH_WRITER_H_INCLUDED__
 | |
| 
 | |
| #include "IMeshWriter.h"
 | |
| #include "S3DVertex.h"
 | |
| #include "IVideoDriver.h"
 | |
| #include "IFileSystem.h"
 | |
| #include "IXMLWriter.h"
 | |
| 
 | |
| namespace irr
 | |
| {
 | |
| 
 | |
| namespace scene
 | |
| {
 | |
| 	class IMeshBuffer;
 | |
| 
 | |
| 
 | |
| 	//! class to write meshes, implementing a IrrMesh (.irrmesh, .xml) writer
 | |
| 	/** This writer implementation has been originally developed for irrEdit and then
 | |
| 	merged out to the Irrlicht Engine */
 | |
| 	class CIrrMeshWriter : public IMeshWriter
 | |
| 	{
 | |
| 	public:
 | |
| 
 | |
| 		CIrrMeshWriter(video::IVideoDriver* driver, io::IFileSystem* fs);
 | |
| 		virtual ~CIrrMeshWriter();
 | |
| 
 | |
| 		//! Returns the type of the mesh writer
 | |
| 		virtual EMESH_WRITER_TYPE getType() const _IRR_OVERRIDE_;
 | |
| 
 | |
| 		//! writes a mesh
 | |
| 		virtual bool writeMesh(io::IWriteFile* file, scene::IMesh* mesh, s32 flags=EMWF_NONE) _IRR_OVERRIDE_;
 | |
| 
 | |
| 	protected:
 | |
| 
 | |
| 		void writeBoundingBox(const core::aabbox3df& box);
 | |
| 
 | |
| 		void writeMeshBuffer(const scene::IMeshBuffer* buffer);
 | |
| 
 | |
| 		void writeMaterial(const video::SMaterial& material);
 | |
| 
 | |
| 		core::stringw getVectorAsStringLine(const core::vector3df& v) const;
 | |
| 
 | |
| 		core::stringw getVectorAsStringLine(const core::vector2df& v) const;
 | |
| 
 | |
| 		// member variables:
 | |
| 
 | |
| 		io::IFileSystem* FileSystem;
 | |
| 		video::IVideoDriver* VideoDriver;
 | |
| 		io::IXMLWriter* Writer;
 | |
| 	};
 | |
| 
 | |
| } // end namespace
 | |
| } // end namespace
 | |
| 
 | |
| #endif
 | |
| 
 |