VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
humanUseDoorController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
17 #include <vrfNavigation/navArea.h>
18 
20 class DtScriptedTaskTask;
23 class DtVectorOutputPort;
26 
32 {
33 private:
40 public:
42  DtHumanUseDoorController(const DtString& name, DtVrfObject* owner,
43  DtSimManager* simManager, DtComponentDescriptor* desc=0, DtReaderWriterRegistry *parentRegistry=0);
44 
46  virtual ~DtHumanUseDoorController();
47 
49  virtual bool init();
50 
52  virtual const char* type() const;
53 
55  virtual void tick();
56 
58  static DtSimComponent* creator(const DtString& name, DtVrfObject* owner, DtSimManager* simManager,
59  DtComponentDescriptor* desc=0, DtReaderWriterRegistry* parentRegistry=0);
60 
61 protected:
62 
63  static void setAutomaticDoorClosingCallback(DtSimMessage* msg, void* usrData);
64  virtual void processSetAutomaticDoorClosing(DtSimMessage* msg);
65 
67  virtual bool isDoorNavTag(const DtNavTag& navTag) const;
68 
70  virtual DtVector findDoor();
71 
73  virtual bool isDoorOpen(const DtVector& doorLoc);
74 
76  virtual bool createPortGroups();
77 
79  virtual bool createPorts();
80 
82  virtual DtHumanUseDoorControllerPSR* createPSR();
83 
84  virtual bool usingNavBot() const;
85 
86  virtual bool taskVisualizationsActive() const;
87  virtual void updateTaskVisualizations();
88 
89  static void navigationInterfaceChanged(const DtVrfObject*, void* usr);
90  virtual void processNavigationInterfaceChanged(const DtVrfObject*);
91 
92 protected:
93 
95 
99 
102 
109 
112 
115 
122 
129 
131 };
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
DtHumanUseDoorControllerPSR * myProcessState
Container for state data associated with this component.
Definition: humanUseDoorController.h:98
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
DtHumanUseDoorControllerDescriptor * myUseDoorDescriptor
The descriptor.
Definition: humanUseDoorController.h:101
DtBooleanOutputPort * myIsMovingPort
Output Port Name: is-moving Output Port Description: Indicates the entity is being actively moved by ...
Definition: humanUseDoorController.h:121
Description: This repository holds all information that is common to all the forms of humans within t...
Definition: humanStateRepository.h:32
This is the DtVrfObjectNavInterface subclass for objects which are actively querying the navigation s...
Definition: activeBotNavInterface.h:26
Instances of DtBooleanOutputPort are output ports through which data producers can send boolean data...
Definition: boolIOPort.h:45
This class provides a base class for all controllers that are capable of executing a DtSimTask...
Definition: singleTaskControllerComponent.h:20
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:42
Definition: readerWriterRegistry.h:39
virtual bool taskVisualizationsActive() const
Returns true if task visualizations are currently active for this component.
Wrapper for GameWare NavTag.
Definition: navDataTag.h:54
virtual const char * type() const =0
Returns a string identifies the class type of component.
virtual bool init()
Calls setRadio()
DtVector myDoorCheckPt2
Definition: humanUseDoorController.h:106
DtBooleanOutputPort * myUseCollisionAvoidancePort
Output Port Name: use-collision-avoidance Output Port Description: Indicates whether or not this cont...
Definition: humanUseDoorController.h:128
virtual void updateTaskVisualizations()
Called to update task visualizations after every tick.
Definition: simComponent.h:487
Specialized classes.
Definition: scriptedTaskTask.h:270
Instances of DtVectorOutputPort are output ports through which data producers can send a DtVector...
Definition: vectorIOPort.h:52
DtHumanUseDoorControllerPSR is a process state repository which holds state variables for the DtHuman...
Definition: humanUseDoorControllerPSR.h:32
File: simMsg.h.
Definition: simMessage.h:35
Instances of DtHumanUseDoorControllerDescriptor are used to specify the parameters for a DtHumanUseDo...
Definition: humanUseDoorControllerDescriptor.h:18
virtual void tick()
This gives the thread of control to the component.
virtual bool createPorts()
Called by init.
DtActiveBotNavInterface * myNavInterface
Definition: humanUseDoorController.h:94
virtual bool createPortGroups()
Called by init.
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:67
const DtTaskControllerComponent & operator=(const DtTaskControllerComponent &orig)
assignment operator
bool myDoorIntersect
Definition: humanUseDoorController.h:107
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103
DtHumanMovementControlOutputPortGroup * myHumanMovementControlOutputPortGroup
Output Group Name: movement-control .
Definition: humanUseDoorController.h:114
An output port group that contains the ports necessary to control the movement of a human using the D...
Definition: humanMovementControlOutputPortGroup.h:22
DtHumanUseDoorController is a controller that models opening and closing doors as the character passe...
Definition: humanUseDoorController.h:31
DtVector myDoorCheckPt1
For debug use only.
Definition: humanUseDoorController.h:105

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)