VR-Forces 4.6 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
vrfmodel
groundFollowEntityController.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2015 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
11
12
#pragma once
13
14
#include "
vrfmodel/groundMoveToDestinationControllerComponent.h
"
15
16
#include <vlutil/vlString.h>
17
#include <matrix/vlVector.h>
18
#include <vlpi/trigonometricSmoother.h>
19
20
class
DtSimManager
;
21
class
DtSimMessage
;
22
class
DtStringOutputPort
;
23
class
DtGroundFollowEntityDescriptor
;
24
33
#include "
vrfmodel/vrfmodelDefines.h
"
34
class
DT_DLL_vrfmodel
DtGroundFollowEntityController
:
public
DtGroundMoveToDestinationControllerComponent
35
{
36
37
public
:
38
41
DtGroundFollowEntityController
(
const
DtString
& name,
42
DtVrfObject
* owner,
43
DtSimManager
* simManager,
44
DtComponentDescriptor
* desc = 0,
45
DtReaderWriterRegistry
* parentRegistry = 0);
46
48
virtual
~
DtGroundFollowEntityController
();
49
52
virtual
const
char
*
type
()
const
;
53
54
58
static
void
followEntityCallback(
DtSimMessage
* msg,
void
* usrData);
59
60
virtual
void
processFollowEntityTask(
DtSimMessage
* msg);
61
62
virtual
DtVector
predictedDestination();
63
68
virtual
const
DtUUID
& entityToFollow();
69
virtual
void
setEntityToFollow(
const
DtUUID
& entity);
70
73
virtual
const
DtVector
& offsetVector()
const
;
74
virtual
void
setOffsetVector(
const
DtVector
& offsets);
75
79
static
DtSimComponent
*
creator
(
const
DtString
& name,
80
DtVrfObject
* owner,
81
DtSimManager
* simManager,
82
DtComponentDescriptor
* desc = 0,
83
DtReaderWriterRegistry
* parentRegistry = 0);
84
86
virtual
void
registerTaskMsgCallbacks
();
87
91
virtual
bool
setupDestination
();
92
95
virtual
bool
passedDestination
();
96
99
virtual
double
findDesiredSpeed
();
100
104
virtual
double
findDesiredHeading
();
105
111
virtual
void
setupDestinationVector
()
const
;
112
117
virtual
DtAutoTransmissionGear
determineGearSetting
();
118
122
virtual
void
stop
();
123
125
virtual
void
tick
();
126
128
virtual
bool
usingNavBot
(){
return
false
;}
129
131
virtual
void
updateNavBotDestination
();
132
134
virtual
bool
needToUpdateNavInterfaceDestination(
const
DtVector
& newLocalDestination);
135
136
protected
:
139
DtGroundFollowEntityController
();
140
142
DtGroundFollowEntityController
(
const
DtGroundFollowEntityController
&
143
orig);
144
146
const
DtGroundFollowEntityController
&
operator=
(
const
147
DtGroundFollowEntityController
& orig);
148
149
virtual
bool
createPorts
();
150
152
static
void
objectAboutToBeRemovedCallback(
DtVrfObject
*,
void
* usr);
153
virtual
void
processObjectAboutToBeRemoved(
DtVrfObject
*);
154
155
protected
:
156
157
DtGroundFollowEntityDescriptor
*
myComponentDescriptor
;
158
160
DtVrfObject
*
myLeaderPointer
;
161
162
DtStringOutputPort
*
myFollowEntityOutputPort
;
163
164
DtTrigonometricSmoother*
myLeaderSmoother
;
165
166
DtVector
myPredictedDestination
;
167
168
double
myNavInterfaceDestinationSetTime
;
169
170
DtVector
myNavInterfaceCurrentDestination
;
171
172
bool
myWarnedOnceDestroyed
;
173
bool
myRemoveCallbackAssigned
;
174
};
175
Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (
www.mak.com
)