gwnavruntime/database/databasevisualgeometrybuilder.h Source File

databasevisualgeometrybuilder.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 Database;
16 
17 class DatabaseVisualGeometryBuilderConfig
18 {
19 public:
20  DatabaseVisualGeometryBuilderConfig()
21  : m_doBuildNavMeshVisRep(true)
22  , m_doBuildNavGraphVisRep(true)
23  , m_doBuildAbstractGraphVisRep(true)
24  , m_visualDetails(DatabaseVisualDetails::Normal)
25  {}
26 public:
27  bool m_doBuildNavMeshVisRep;
28  bool m_doBuildNavGraphVisRep;
29  bool m_doBuildAbstractGraphVisRep;
30  DatabaseVisualDetails::Enum m_visualDetails;
31 };
32 
33 class DatabaseVisualGeometryBuilder : public IVisualGeometryBuilder
34 {
35 public:
36  DatabaseVisualGeometryBuilder(Database* database = nullptr);
37 
38  virtual void DoBuild()
39  {
40  BuildActiveDataGeometry();
41  BuildAbstractGraphGeometry();
42  }
43 
44 private:
45  void BuildActiveDataGeometry();
46  void BuildAbstractGraphGeometry();
47 
48 public:
49  Database* m_database;
50  CellBox m_cellBox;
51  DatabaseVisualGeometryBuilderConfig m_config;
52 };
53 
54 }
55 
56 
Box2i CellBox
A type that represents a bounding box around cells in a 2D grid.
Definition: navmeshtypes.h:31
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17