source: GTP/trunk/Lib/Vis/Preprocessing/src/Containers.h @ 2615

Revision 2615, 2.1 KB checked in by mattausch, 17 years ago (diff)

did some stuff for the visualization

Line 
1#ifndef _Container_H__
2#define _Container_H__
3
4#include <vector>
5#include <queue>
6#include <map>
7#include "common.h"
8
9using std::vector;
10
11namespace GtpVisibilityPreprocessor {
12
13class TransformedMeshInstance;
14class ViewCell;
15class HierarchyNode;
16class SceneGraphNode;
17class SceneGraphLeaf;
18class Intersectable;
19class Polygon3;
20class Ray;
21class Mesh;
22class KdLeaf;
23class Vector3;
24
25struct IndexedBoundingBox;
26struct VisibilityPoint;
27
28
29/** Container storing polygons used during BSP tree construction.
30*/
31typedef vector<Polygon3 *> PolygonContainer;
32
33/** Container storing a bundle of rays.
34*/
35typedef vector<Ray *> RayContainer;
36
37/** Container for Mesh pointers primarily for the use within the kDTree and
38    BSP hierarchies
39*/
40typedef vector<Intersectable *> ObjectContainer;
41
42/** Container for ViewCell pointers primarily for the use within the kDTree and
43    BSP hierarchies
44*/
45typedef vector<ViewCell *> ViewCellContainer;
46
47/** Container for HierarchyNodes pointers primarily for the use within the kDTree and
48    BSP hierarchies
49*/
50typedef vector<HierarchyNode *> NodeContainer;
51
52typedef vector<SceneGraphNode *> SceneGraphNodeContainer;
53
54typedef vector<Mesh *> MeshContainer;
55
56/** Container storing visibility points, i.e. locations in space storing from point visibility
57        information.
58*/
59typedef vector<VisibilityPoint *> VisibilityPointsContainer;
60
61typedef vector<IndexedBoundingBox> IndexedBoundingBoxContainer;
62
63/** Container for ViewCell pointers primarily for the use within the kDTree and
64    BSP hierarchies
65*/
66typedef vector<KdLeaf *> KdLeafContainer;
67
68typedef std::map<int, Intersectable *> ObjectMap;
69
70/// default vertex container for Mesh
71typedef std::vector<Vector3> VertexContainer;
72
73/// vertex index container
74typedef std::vector<int> VertexIndexContainer;
75
76/// a container for dynamic objects
77
78#if USE_TRANSFORMED_MESH_INSTANCE_HACK
79typedef std::vector<TransformedMeshInstance *> DynamicObjectsContainer;
80#else
81typedef vector<SceneGraphLeaf *> DynamicObjectsContainer;
82#endif
83
84}
85
86#endif // _Container_H__
Note: See TracBrowser for help on using the repository browser.