VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
navInterfaceManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
15 #include <vrfNavigation/navBot.h>
16 
17 class DtNavArea;
19 
21 {
23 
25  void* userData;
26 };
27 
29 {
30 private:
36  DtNavInterfaceManager& operator=(const DtNavInterfaceManager& orig);
37 
38 public:
39 
43 
44  virtual ~DtNavInterfaceManager();
45 
46  DtVrfObjectNavInterface* primaryNavInterface();
47  const DtVrfObjectNavInterface* primaryNavInterface() const;
48 
51  virtual bool init();
52 
54  virtual bool postObjectInit();
55 
56  virtual void tick();
57 
59  virtual bool updateNavInterfaces(bool removingPrimaryArea = false);
60 
62  virtual void setNavigationEnabled(bool);
63  bool navigationEnabled() const;
64 
66  DtNavPathEvalFunction navigationPathEvalFunction() const;
67  void setNavigationPathEvalFunction(const DtNavPathEvalFunction& eval);
68 
69 protected:
70  static void areaAboutToBeRemovedCallback(DtNavArea*, void* usr);
71  virtual void processAreaAboutToBeRemoved(DtNavArea*);
72 
73 protected:
76 
79 
80  std::vector<DtNavArea*> mySecondaryNavAreas;
81  std::map<DtNavArea*, DtVrfObjectNavInterface*> mySecondaryNavInterfaces;
82 
85 
89 };
A nav interface is a software component of an object that maintains the object&#39;s presence in the navi...
Definition: vrfObjectNavInterface.h:39
Definition: navInterfaceManager.h:28
bool myNavigationEnabled
Definition: navInterfaceManager.h:83
DtSimObjectReference mySimObjectReference
Definition: navInterfaceManager.h:75
std::map< DtNavArea *, DtVrfObjectNavInterface * > mySecondaryNavInterfaces
Definition: navInterfaceManager.h:81
DtNavPathEvalFunction(DtNavBot::NavBotPathLocationEvalFcn f, void *u)
Definition: navInterfaceManager.h:22
DtVrfObjectNavInterface * myPrimaryNavInterface
Definition: navInterfaceManager.h:78
DtNavBot::NavBotPathLocationEvalFcn fcn
Definition: navInterfaceManager.h:22
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
This class contains all the data and logic for navigation within a specific area. Nav Data may be loa...
Definition: navArea.h:205
bool myNeedsPostObjectInit
Definition: navInterfaceManager.h:87
std::vector< DtNavArea * > mySecondaryNavAreas
Definition: navInterfaceManager.h:80
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:96
DtLocalObject * myVrfObject
Definition: navInterfaceManager.h:74
void * userData
Definition: navInterfaceManager.h:25
DtNavPathEvalFunction myNavigationPathEval
Definition: navInterfaceManager.h:84
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
Contains the DtSimObjectReference class declaration.
Definition: navInterfaceManager.h:20
DtString myNavProfile
Definition: navInterfaceManager.h:86
DtNavArea * myPrimaryNavArea
Definition: navInterfaceManager.h:77
bool(* NavBotPathLocationEvalFcn)(const DtNavTag &navTag, float slope, float elevationChange, float *costMultiplier, void *userData)
Definition: navBot.h:130
DtSimulationServices * mySimulationServices
Definition: navInterfaceManager.h:88
A locally simulated VRF object.
Definition: localObject.h:98

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)