My Project
SceneWriter.h
1 #pragma once
2 
3 #include <string>
4 
5 namespace ParaEngine
6 {
7  using namespace std;
8  class CParaFile;
9  class CShapeAABB;
14  {
15  public:
18  CSceneWriter(CParaFile& file);
19  ~CSceneWriter(void);
20 
22  enum ENCODING{
23  NPL_TEXT, // text file encoding
24  NPL_BINARY, // binary file encoding
25  NPL_COMPRESSED, // compressed file encoding.
26  XML_TEXT, // XML text
27  };
28 
29  public:
31  void Close();
32 
34  void Flush();
35 
37  DWORD GetEncoding();
38 
40  void SetEncoding(DWORD dwEncoding);
41 
43  void WriteLine();
44  void WriteLine(const string& str);
45  void WriteLine(double dValue);
46 
48  void Write(const string& str);
49  void Write(const char* pData, int nSize);
50  void Write(double dValue);
51 
53  void BeginManagedLoader(const string& sLoaderName);
54 
56  void EndManagedLoader();
57 
62  void WriteRegion(const CShapeAABB& aabb);
63 
64  private:
65  CParaFile& m_file;
66  char* m_buffer;
67  int m_nbufferSize;
68  int m_nMaxBufferSize;
69  DWORD m_nEncoding;
70  bool m_bInsideManagedLoader;
71  };
72 
73 }
different physics engine has different winding order.
Definition: EventBinding.h:32
AABB-related code.
Definition: ShapeAABB.h:11
ENCODING
encoding, one can combine them with bit and operation.
Definition: SceneWriter.h:22
writing the scene to script file.
Definition: SceneWriter.h:13
it presents a real or virtual file in ParaEngine.
Definition: ParaFile.h:31