00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef OST_GFX_GOST_EXPORTER_HH
00020 #define OST_GFX_GOST_EXPORTER_HH
00021
00022 #include <cstdio>
00023
00024 #include "exporter.hh"
00025
00026 namespace ost { namespace gfx {
00027
00028 class DLLEXPORT_OST_GFX GostExporter: public Exporter
00029 {
00030 public:
00031 GostExporter(const std::string& fname);
00032 virtual ~GostExporter();
00033
00034
00035 virtual void SceneStart(const Scene* scene);
00036 virtual void SceneEnd(const Scene* scene);
00037 virtual void NodeStart(const std::string& name, NodeType t);
00038 virtual void NodeEnd(const std::string& name);
00039 virtual void WriteVertexData(const float* v, const float* n, const float* c, const float* t,
00040 size_t stride, size_t count);
00041 virtual void WritePointData(const unsigned int* i, size_t count);
00042 virtual void WriteLineData(const unsigned int* ij, size_t count);
00043 virtual void WriteTriData(const unsigned int* ijk, size_t count);
00044 virtual void WriteQuadData(const unsigned int* ijkl, size_t count);
00045
00046
00047 void SetFrame(size_t f);
00048 private:
00049 FILE* file_;
00050 };
00051
00052 }}
00053
00054 #endif