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
disaggregatedPatrolAlongController.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2004 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
12
#pragma once
13
14
#include "
vrfobjcore/singleTaskControllerComponent.h
"
15
16
class
DtFormationState
;
17
class
DtAggregatePatrolAlongPSR
;
18
class
DtAggregatePatrolAlongDescriptor;
19
class
DtVrfObjectManager
;
20
35
#include "
vrfmodel/vrfmodelDefines.h
"
36
class
DT_DLL_vrfmodel
DtDisaggregatedPatrolAlongController
:
public
DtSingleTaskControllerComponent
37
{
38
public
:
39
40
enum
DtPatrolAlongState
41
{
42
DtMovingAlongRoute = 0,
43
DtReversingDirection = 1
44
};
45
48
DtDisaggregatedPatrolAlongController
(
const
DtString
& name,
49
DtVrfObject
* owner,
50
DtSimManager
* simManager,
51
DtComponentDescriptor
* desc = 0,
52
DtReaderWriterRegistry
* parentRegistry = 0);
53
55
virtual
~
DtDisaggregatedPatrolAlongController
();
56
59
virtual
const
char
*
type
()
const
;
60
63
virtual
bool
init
();
64
66
virtual
void
tick
();
67
69
virtual
void
registerTaskMsgCallbacks
();
70
71
static
void
patrolAlongCallback(
DtSimMessage
* msg,
void
* usr,
DtSimTaskStatePtr
taskStatePtr);
72
75
DtSimTaskStatePtr
currentTaskState
()
const
;
76
81
static
void
taskCompleteReportCallback(
DtSimMessage
* msg,
void
* usr);
82
86
static
DtSimComponent
* creator(
const
DtString
& name,
87
DtVrfObject
* owner,
88
DtSimManager
* simManager,
89
DtComponentDescriptor
* desc = 0,
90
DtReaderWriterRegistry
* parentRegistry = 0);
91
92
protected
:
93
virtual
void
processPatrolAlong(
const
DtTaskMessage
& msg,
DtSimTaskStatePtr
taskStatePtr);
94
99
virtual
void
onTaskComplete(
DtSimMessage
* msg);
100
106
virtual
bool
createPSR();
107
115
virtual
DtIteratorDirection
initialTraversalDirection(
116
const
DtUUID
& route,
const
DtVector
& initialWorldPosition)
const
;
117
126
virtual
void
sendMoveAlongToSelf(
const
DtUUID
& route,
127
enum
DtIteratorDirection
traversalDirection,
bool
startAtClosestPoint);
128
129
private
:
130
132
DtDisaggregatedPatrolAlongController
(
const
DtDisaggregatedPatrolAlongController
& orig);
133
135
DtDisaggregatedPatrolAlongController
&
operator=
(
const
DtDisaggregatedPatrolAlongController
& orig);
136
137
protected
:
138
140
const
DtAggregatePatrolAlongDescriptor*
myAggregatePatrolAlongDescriptor
;
141
143
DtFormationState
*
myFormationState
;
144
147
DtAggregatePatrolAlongPSR
*
myProcessState
;
148
149
bool
myFirstTick
;
150
};
151
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
)