Irrlicht 3D Engine
IMeshWriter.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 __IRR_I_MESH_WRITER_H_INCLUDED__
00006 #define __IRR_I_MESH_WRITER_H_INCLUDED__
00007 
00008 #include "IReferenceCounted.h"
00009 #include "EMeshWriterEnums.h"
00010 
00011 namespace irr
00012 {
00013 namespace io
00014 {
00015     class IWriteFile;
00016 } // end namespace io
00017 
00018 namespace scene
00019 {
00020     class IMesh;
00021 
00023     class IMeshWriter : public virtual IReferenceCounted
00024     {
00025     public:
00026 
00028         virtual ~IMeshWriter() {}
00029 
00031 
00035         virtual EMESH_WRITER_TYPE getType() const = 0;
00036 
00038 
00042         virtual bool writeMesh(io::IWriteFile* file, scene::IMesh* mesh,
00043                             s32 flags=EMWF_NONE) = 0;
00044 
00045         // Writes an animated mesh
00046         // for future use, no writer is able to write animated meshes currently
00047         /* \return Returns true if sucessful */
00048         //virtual bool writeAnimatedMesh(io::IWriteFile* file,
00049         // scene::IAnimatedMesh* mesh,
00050         // s32 flags=EMWF_NONE) = 0;
00051     };
00052 
00053 
00054 } // end namespace
00055 } // end namespace
00056 
00057 #endif
00058