source: trunk/VUT/GtpVisibilityPreprocessor/src/Exporter.h @ 170

Revision 170, 912 bytes checked in by bittner, 19 years ago (diff)

mesh kd tree added

Line 
1#ifndef __EXPORTER_H
2#define __EXPORTER_H
3
4#include <string>
5#include <vector>
6using namespace std;
7
8class KdTree;
9class SceneGraphNode;
10class Ray;
11class AxisAlignedBox3;
12class MeshInstance;
13
14class Exporter
15{
16protected:
17  string mFilename;
18  bool wireframe;
19
20public:
21 
22  Exporter(const string filename):mFilename(filename),wireframe(false)
23  {
24  }
25  virtual ~Exporter() {}
26 
27  virtual bool ExportScene(SceneGraphNode *node) = 0;
28
29  virtual bool
30  ExportBox(const AxisAlignedBox3 &box) = 0;
31
32  virtual bool
33  ExportKdTree(const KdTree &tree) = 0;
34
35  virtual bool
36  ExportRays(const vector<Ray> &rays, const float length=1000) = 0;
37
38  virtual void
39  ExportMeshInstance(MeshInstance *mesh) = 0;
40 
41  void SetWireframe() { wireframe = true; }
42  void SetFilled() { wireframe = false; }
43
44  static Exporter *
45  GetExporter(const string filename);
46
47 
48};
49 
50
51
52#endif
Note: See TracBrowser for help on using the repository browser.