[372] | 1 | #ifndef _Container_H__
|
---|
| 2 | #define _Container_H__
|
---|
| 3 |
|
---|
| 4 | #include <vector>
|
---|
| 5 | #include <queue>
|
---|
[1072] | 6 | #include <map>
|
---|
[372] | 7 |
|
---|
| 8 | using namespace std;
|
---|
| 9 |
|
---|
[860] | 10 | namespace GtpVisibilityPreprocessor {
|
---|
| 11 |
|
---|
[372] | 12 | class ViewCell;
|
---|
| 13 | class HierarchyNode;
|
---|
| 14 | class SceneGraphNode;
|
---|
| 15 | class Intersectable;
|
---|
| 16 | class Polygon3;
|
---|
| 17 | class Ray;
|
---|
[503] | 18 | class Mesh;
|
---|
[1184] | 19 | class KdLeaf;
|
---|
[1344] | 20 | class Vector3;
|
---|
[372] | 21 |
|
---|
[850] | 22 | struct IndexedBoundingBox;
|
---|
[810] | 23 | struct VisibilityPoint;
|
---|
| 24 |
|
---|
[863] | 25 |
|
---|
[372] | 26 | /** Container storing polygons used during BSP tree construction.
|
---|
| 27 | */
|
---|
| 28 | typedef vector<Polygon3 *> PolygonContainer;
|
---|
| 29 |
|
---|
| 30 | /** Container storing a bundle of rays.
|
---|
| 31 | */
|
---|
| 32 | typedef vector<Ray *> RayContainer;
|
---|
| 33 |
|
---|
| 34 | /** Container for Mesh pointers primarily for the use within the kDTree and
|
---|
[1344] | 35 | BSP hierarchies
|
---|
| 36 | */
|
---|
[372] | 37 | typedef vector<Intersectable *> ObjectContainer;
|
---|
| 38 |
|
---|
| 39 | /** Container for ViewCell pointers primarily for the use within the kDTree and
|
---|
[1344] | 40 | BSP hierarchies
|
---|
| 41 | */
|
---|
[372] | 42 | typedef vector<ViewCell *> ViewCellContainer;
|
---|
| 43 |
|
---|
| 44 | /** Container for HierarchyNodes pointers primarily for the use within the kDTree and
|
---|
[1001] | 45 | BSP hierarchies
|
---|
[1344] | 46 | */
|
---|
[372] | 47 | typedef vector<HierarchyNode *> NodeContainer;
|
---|
| 48 |
|
---|
| 49 | typedef vector<SceneGraphNode *> SceneGraphNodeContainer;
|
---|
| 50 |
|
---|
[503] | 51 | typedef vector<Mesh *> MeshContainer;
|
---|
[372] | 52 |
|
---|
[810] | 53 | /** Container storing visibility points, i.e. locations in space storing from point visibility
|
---|
| 54 | information.
|
---|
| 55 | */
|
---|
| 56 | typedef vector<VisibilityPoint *> VisibilityPointsContainer;
|
---|
[372] | 57 |
|
---|
[850] | 58 | typedef vector<IndexedBoundingBox> IndexedBoundingBoxContainer;
|
---|
| 59 |
|
---|
[1184] | 60 | /** Container for ViewCell pointers primarily for the use within the kDTree and
|
---|
[1344] | 61 | BSP hierarchies
|
---|
| 62 | */
|
---|
[1184] | 63 | typedef vector<KdLeaf *> KdLeafContainer;
|
---|
| 64 |
|
---|
[1072] | 65 | typedef std::map<int, Intersectable *> ObjectMap;
|
---|
| 66 |
|
---|
[1344] | 67 | /// default vertex container for Mesh
|
---|
| 68 | typedef std::vector<Vector3> VertexContainer;
|
---|
| 69 |
|
---|
| 70 | /// vertex index container
|
---|
| 71 | //typedef std::vector<short> VertexIndexContainer;
|
---|
| 72 | typedef std::vector<int> VertexIndexContainer;
|
---|
| 73 |
|
---|
[860] | 74 | }
|
---|
| 75 |
|
---|
[372] | 76 | #endif // _Container_H__
|
---|