VR-Forces 4.2 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
include
vrfobjcore
singleTaskControllerComponent.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2010 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
10
11
#pragma once
12
13
#include "
vrfobjcore/taskCtlrCmpnt.h
"
14
15
20
class
DT_DLL_vrfobjcore
DtSingleTaskControllerComponent
:
public
DtTaskControllerComponent
21
{
22
23
public
:
24
30
DtSingleTaskControllerComponent
(
const
DtString
& name,
DtVrfObject
* owner,
31
DtSimManager
* simManager,
32
DtComponentDescriptor
* compDesc = 0,
33
DtReaderWriterRegistry
* parentRegistry = 0);
34
36
virtual
~
DtSingleTaskControllerComponent
();
37
42
virtual
void
postTick
();
43
52
virtual
bool
beginProcessingTask
(
const
DtTaskMessage
&
task
,
53
DtSimTaskStatePtr
taskState);
54
57
virtual
void
taskNotify
(
const
DtSimTask
& task);
58
59
64
virtual
void
taskComplete(
bool
success =
true
);
65
69
virtual
void
clearTask
();
70
73
virtual
void
suspendTask();
74
78
virtual
int
sendSubtask(
DtSimTask
& task);
79
83
virtual
void
clearSubtask(
int
subtaskId);
84
88
virtual
void
addPendingSubtaskId(
int
subtaskId);
89
94
virtual
bool
findPendingSubtaskId(
int
subtaskId);
95
100
virtual
void
removePendingSubtaskId(
int
subtaskId);
101
104
virtual
void
removeAllPendingSubtaskIds();
105
107
virtual
std::vector<int> currentPendingSubstaskIds()
const
;
108
111
//virtual DtTaskMessage* pendingSubtask(int subtaskId, DtString& controller) const;
112
114
virtual
void
clearCurrentTaskMessage();
115
117
virtual
DtTaskMessage
* currentTaskMessage()
const
;
118
124
virtual
DtSimTaskStatePtr
currentTaskState()
const
;
125
135
virtual
bool
decideToGiveUpTask()
const
;
136
140
virtual
void
giveUpTask();
141
143
virtual
bool
taskActive
(
int
taskId)
const
;
144
146
virtual
bool
clearTopLevelTasks
();
147
149
virtual
void
clearConflictingTopLevelTasks
(
const
DtSimTaskMessageType
& conflictType);
150
152
virtual
void
clearTasksByType
(
const
DtSimTaskMessageType
& taskType);
153
155
virtual
void
clearTaskById
(
int
taskId);
156
157
virtual
DtSuspendedTaskInfo
*
suspendTaskById
(
int
taskId);
158
160
virtual
std::list<DtTaskMessage*>
currentTaskMessages
()
const
;
161
163
virtual
DtTaskWithTaskStateListPtr
topLevelTasks
()
const
;
164
165
protected
:
168
virtual
void
clearPendingSubtasks();
169
173
virtual
void
clearSubtasksByType(
const
DtSimTaskMessageType
& taskType);
174
};
Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (
www.mak.com
)