gwnavruntime/navgraph/blobs/navgraphlinkinfoblobbuilder.h Source File

navgraphlinkinfoblobbuilder.h
Go to the documentation of this file.
1 /*
2 * Copyright 2015 Autodesk, Inc. All rights reserved.
3 * Use of this software is subject to the terms of the Autodesk license agreement and any attachments or Appendices thereto provided at the time of installation or download,
4 * or which otherwise accompanies this software in either electronic or hard copy form, or which is signed by you and accepted by Autodesk.
5 */
6 
7 // Primary contact: MAMU - secondary contact: NOBODY
8 #ifndef Navigation_NavGraph_DisplayListBuilder_H
9 #define Navigation_NavGraph_DisplayListBuilder_H
10 
13 
14 namespace Kaim
15 {
16 
17 class NavGraph;
18 class NavGraphVertexLinkInfoBlob;
19 class NavGraphVertex;
20 class GraphVertexData;
21 class NavGraphVertexSpatializationBlob;
22 class NavGraphLink;
23 class NavGraphArrayLinkInfoBlob;
24 class NavData;
25 
26 class NavGraphLinkInfoBlobBuilder : public BaseBlobBuilder<NavGraphLinkInfoBlob>
27 {
28 public:
29  NavGraphLinkInfoBlobBuilder(NavGraph* navGraph, KyUInt32 graphIndex) : m_navGraph(navGraph), m_graphIndex(graphIndex) {}
30 
31 private:
32  virtual void DoBuild();
33 
34  NavGraph* m_navGraph;
35  KyUInt32 m_graphIndex;
36 };
37 
38 class NavGraphVertexLinkInfoBlobBuilder : public BaseBlobBuilder<NavGraphVertexLinkInfoBlob>
39 {
40 public:
41  NavGraphVertexLinkInfoBlobBuilder(const NavGraphVertex* vertex, const GraphVertexData* vertexData) : m_vertex(vertex), m_vertexData(vertexData) {}
42 
43 private:
44  virtual void DoBuild();
45 
46  const NavGraphVertex* m_vertex;
47  const GraphVertexData* m_vertexData;
48 };
49 
50 class NavGraphVertexSpatializationBlobBuilder : public BaseBlobBuilder<NavGraphVertexSpatializationBlob>
51 {
52 public:
53  NavGraphVertexSpatializationBlobBuilder(NavGraphLink* link) : m_link(link) {}
54 
55 private:
56  virtual void DoBuild();
57 
58  NavGraphLink* m_link;
59 };
60 
61 class NavGraphArrayLinkInfoBlobBuilder : public BaseBlobBuilder<NavGraphArrayLinkInfoBlob>
62 {
63 public:
64  NavGraphArrayLinkInfoBlobBuilder(NavData* navData) : m_navData(navData) {}
65 
66 private:
67  virtual void DoBuild();
68 
69  NavData* m_navData;
70 };
71 
72 }
73 
74 #endif
Definition: gamekitcrowddispersion.h:20
unsigned int KyUInt32
Type used internally to represent an unsigned 32-bit integer.
Definition: types.h:36