VR-Forces 4.7 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
humanPatrolController.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2004 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
12
13
#pragma once
14
15
#include "
vrfobjcore/singleTaskControllerComponent.h
"
16
#include "
vrfmodel/vrfmodelDefines.h
"
17
18
class
DtFormationState
;
19
class
DtHumanPatrolPSR
;
20
class
DtVrfObjectManager
;
21
32
class
DT_DLL_vrfmodel
DtHumanPatrolController
:
public
DtSingleTaskControllerComponent
33
{
34
public
:
35
36
enum
DtPatrolAlongState
37
{
38
DtMovingAlongRoute = 0,
39
DtReversingDirection = 1
40
};
41
44
DtHumanPatrolController
(
const
DtString
& name,
45
DtVrfObject
* owner,
46
DtSimManager
* simManager,
47
DtComponentDescriptor
* desc = 0,
48
DtReaderWriterRegistry
* parentRegistry = 0);
49
51
virtual
~
DtHumanPatrolController
();
52
55
virtual
const
char
*
type
()
const
;
56
59
virtual
bool
init
();
60
62
virtual
void
registerTaskMsgCallbacks
();
63
64
static
void
patrolCallback(
DtSimMessage
* msg,
void
* usr,
DtSimTaskStatePtr
taskStatePtr);
65
66
virtual
DtSimTaskStatePtr
currentTaskState
()
const
;
67
72
static
void
taskCompleteReportCallback(
DtSimMessage
* msg,
void
* usr);
73
77
static
DtSimComponent
* creator(
const
DtString
& name,
78
DtVrfObject
* owner,
79
DtSimManager
* simManager,
80
DtComponentDescriptor
* desc = 0,
81
DtReaderWriterRegistry
* parentRegistry = 0);
82
83
protected
:
84
virtual
void
processPatrol(
const
DtTaskMessage
& msg,
DtSimTaskStatePtr
taskStatePtr);
85
90
virtual
bool
processPatrolTwoPointsTask(
DtSimTask
*
task
,
DtSimTaskStatePtr
taskStatePtr);
91
95
virtual
bool
processPatrolAlongTask(
DtSimTask
*
task
,
DtSimTaskStatePtr
taskStatePtr);
96
104
virtual
void
onTaskComplete(
DtSimMessage
* msg);
105
113
virtual
bool
moveTo(
const
DtUUID
& controlPoint);
114
120
virtual
bool
createPSR();
121
129
virtual
DtIteratorDirection
initialTraversalDirection(
130
const
DtUUID
& route,
const
DtVector
& initialWorldPosition)
const
;
131
140
virtual
void
sendMoveAlongToSelf(
const
DtUUID
& route,
141
enum
DtIteratorDirection
traversalDirection,
bool
startAtClosestPoint);
142
143
private
:
144
146
DtHumanPatrolController
(
const
DtHumanPatrolController
& orig);
147
149
DtHumanPatrolController
&
operator=
(
const
DtHumanPatrolController
& orig);
150
151
protected
:
152
155
DtHumanPatrolPSR
*
myProcessState
;
156
};
Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (
www.mak.com
)