VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
navEdgeNavInterface.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2018 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
13 #include "matrix/vlVector.h"
14 
15 class DtNavArea;
16 class DtNavNavEdge;
17 class DtString;
18 struct DtInputNavTag;
19 
25 {
26 private:
33 
34 public:
35  static DtVrfObjectNavInterface* create(DtLocalObject* vrfObject);
36 
37 protected:
41  virtual bool init();
42 
43 public:
44 
45  virtual ~DtNavEdgeNavInterface();
46 
49  virtual void postObjectInit();
50 
51  virtual void tick();
52 
53  virtual DtNavArea* navArea();
54 
55 protected:
56 
58  virtual void changingNavArea(DtNavArea* newNavArea);
59 
61  virtual void processVerticesChanged();
62 
65  bool createNavEdge();
66 
68  virtual bool createNavEdgeLadder(const DtString& navigationProfile, const DtInputNavTag& navTag, const DtInputNavTag& entryExitNavTag);
69 
71  void removeNavEdge();
72 
75  bool adjustToNearestVertexLinkPoint(const DtString&, const double, const double, const DtVector&, DtVector&) const;
76 
77 protected:
82  unsigned myNavEdgeIndex;
83 
84  boost::signals2::scoped_connection mySetLocationConnection;
85  boost::signals2::scoped_connection myCurrentPitchedChangedConnection;
86 };
DtNavArea * myNavArea
Definition: navEdgeNavInterface.h:78
A nav interface is a software component of an object that maintains the object's presence in the navi...
Definition: vrfObjectNavInterface.h:39
Definition: navGeneration.h:56
DtNavArea * myNewNavArea
Definition: navEdgeNavInterface.h:79
bool myChangingNavArea
Definition: navEdgeNavInterface.h:81
bool myUpdatePointsRequired
Definition: navEdgeNavInterface.h:80
#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:206
virtual bool init()
Virtual init, called from the create() method.
boost::signals2::scoped_connection myCurrentPitchedChangedConnection
Definition: navEdgeNavInterface.h:85
unsigned myNavEdgeIndex
Definition: navEdgeNavInterface.h:82
boost::signals2::scoped_connection mySetLocationConnection
Definition: navEdgeNavInterface.h:84
virtual void postObjectInit()
Perform additional initialization after the object has been initialized. Default behavior is to do no...
Definition: vrfObjectNavInterface.h:67
DtVrfObjectNavInterface & operator=(const DtVrfObjectNavInterface &orig)
Not Implemented.
This is the DtVrfObjectNavInterface subclass for objects which insert themselves as nav edges into th...
Definition: navEdgeNavInterface.h:24
virtual void changingNavArea(DtNavArea *newNavArea)
Called when about to change to a new navArea.
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)