gwnavruntime/database/navgraphlinker.h Source File

navgraphlinker.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 
8 
9 
10 #pragma once
11 
14 
15 namespace Kaim
16 {
17 
18 class NavGraph;
19 class Database;
20 class NavCellGrid;
21 class GraphVertexData;
22 class TriangleFromPosQuery;
23 
25 // NavGraphLinker
27 
28 /* Used internally by the GraphManager to stitch Graphs together at runtime. */
29 class NavGraphLinker
30 {
31  KY_DEFINE_NEW_DELETE_OPERATORS(Stat_Default_Mem)
32  KY_CLASS_WITHOUT_COPY(NavGraphLinker)
33 
34 public:
35  NavGraphLinker(Database* database) : m_database(database) {}
36  ~NavGraphLinker() { Clear(); }
37 
38  void Clear() {}
39 
40  KyResult LinkNavGraph(NavGraph* navGraph);
41  KyResult UnLinkNavGraph(NavGraph* navGraph);
42 
43  KyResult LinkNavGraphVertex(NavGraph* navGraph, NavGraphVertexIdx vertexIdx, TriangleFromPosQuery& triangleFromPosQuery);
44  KyResult UnLinkNavGraphVertex(GraphVertexData& vertexData);
45 
46 public:
47  Database* m_database;
48 };
49 
50 } // namespace Kaim
51 
KyUInt32 NavGraphVertexIdx
An index that uniquely identifies a single vertex within the set of vertices owned by a NavGraph...
Definition: navgraphtypes.h:45
#define KY_CLASS_WITHOUT_COPY(ClassName)
Define to forbid copy constructor and copy assignment.
Definition: types.h:196
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:132
Navigation return code class.
Definition: types.h:108
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17