VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfObjectNavInterface.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 
12 #include "vrfobjcore/simObject.h"
15 
16 class DtNavArea;
17 class DtLocalObject;
18 
39 {
40 private:
46  DtVrfObjectNavInterface& operator=(const DtVrfObjectNavInterface& orig);
47 
48 public:
49  //static DtVrfObjectNavInterface* create(DtVrfObject* vrfObject);
50 
52  virtual bool ableToNavigate() const;
53 
54 protected:
58  virtual bool init();
59 
60 public:
61 
64  virtual void postObjectInit() {};
65 
66  virtual void tick();
67  virtual void firstTick();
68 
69  virtual ~DtVrfObjectNavInterface() = 0;
70 
71  virtual void addNavAreaChangedCallback(DtNoArgumentCallbackList::DtCallbackFunctionType callback, void* usr) const;
72  virtual void removeNavAreaChangedCallback(DtNoArgumentCallbackList::DtCallbackFunctionType callback, void* usr) const;
73  virtual void invokeNavAreaChangedCallbacks();
74 
76  virtual void changingNavArea(DtNavArea* newNavArea);
77 
79  virtual void setWaitingForLoad(bool isLoading);
80  virtual bool isWaitingForLoad() const;
81 
82 protected:
86  virtual bool isCollidableWhenDestroyed() const;
87 
88 protected:
93 
95 };
DtNoArgumentCallbackList myChangedNavAreaCallbackList
Definition: vrfObjectNavInterface.h:94
A nav interface is a software component of an object that maintains the object's presence in the navi...
Definition: vrfObjectNavInterface.h:38
void(* DtCallbackFunctionType)(void *)
The function signature of the callback function.
Definition: noArgumentCallbackList.h:156
DtNavArea * myCurrentNavArea
Definition: vrfObjectNavInterface.h:90
#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
This class works just as DtCalllbackTable, but manages callbacks that have no arguments, and therefore don't fit in the template defined by DtCallbackList.
Definition: noArgumentCallbackList.h:152
bool myFirstTick
Definition: vrfObjectNavInterface.h:91
virtual void postObjectInit()
Perform additional initialization after the object has been initialized. Default behavior is to do no...
Definition: vrfObjectNavInterface.h:64
bool myIsWaitingForNavLoad
Definition: vrfObjectNavInterface.h:92
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
DtLocalObject * myVrfObject
Definition: vrfObjectNavInterface.h:89
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 Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)