gwnavruntime/navgraph/blobs/navgraphlinkinfoblobbuilder.h Source File

navgraphlinkinfoblobbuilder.h
Go to the documentation of this file.
1 /*
2 * Copyright 2016 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 #pragma once
8 
11 
12 namespace Kaim
13 {
14 
15 class NavGraph;
16 class NavGraphVertexLinkInfoBlob;
17 class NavGraphVertex;
18 class GraphVertexData;
19 class NavGraphVertexSpatializationBlob;
20 class NavGraphLink;
21 class NavGraphArrayLinkInfoBlob;
22 class NavData;
23 
24 class NavGraphLinkInfoBlobBuilder : public BaseBlobBuilder<NavGraphLinkInfoBlob>
25 {
26 public:
27  NavGraphLinkInfoBlobBuilder(NavGraph* navGraph, KyUInt32 graphIndex) : m_navGraph(navGraph), m_graphIndex(graphIndex) {}
28 
29 private:
30  virtual void DoBuild();
31 
32  NavGraph* m_navGraph;
33  KyUInt32 m_graphIndex;
34 };
35 
36 class NavGraphVertexLinkInfoBlobBuilder : public BaseBlobBuilder<NavGraphVertexLinkInfoBlob>
37 {
38 public:
39  NavGraphVertexLinkInfoBlobBuilder(const NavGraphVertex* vertex, const GraphVertexData* vertexData) : m_vertex(vertex), m_vertexData(vertexData) {}
40 
41 private:
42  virtual void DoBuild();
43 
44  const NavGraphVertex* m_vertex;
45  const GraphVertexData* m_vertexData;
46 };
47 
48 class NavGraphVertexSpatializationBlobBuilder : public BaseBlobBuilder<NavGraphVertexSpatializationBlob>
49 {
50 public:
51  NavGraphVertexSpatializationBlobBuilder(NavGraphLink* link) : m_link(link) {}
52 
53 private:
54  virtual void DoBuild();
55 
56  NavGraphLink* m_link;
57 };
58 
59 class NavGraphArrayLinkInfoBlobBuilder : public BaseBlobBuilder<NavGraphArrayLinkInfoBlob>
60 {
61 public:
62  NavGraphArrayLinkInfoBlobBuilder(NavData* navData) : m_navData(navData) {}
63 
64 private:
65  virtual void DoBuild();
66 
67  NavData* m_navData;
68 };
69 
70 }
71 
std::uint32_t KyUInt32
uint32_t
Definition: types.h:29
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17