VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
taskStatusEntry.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
13 #include "vrfobjcore/simObject.h"
14 #include <readerWriter/rwBoolean.h>
15 #include <readerWriter/rwInt.h>
18 #include <readerWriter/rwString.h>
20 
22 
24 
29 {
30 public:
32  DtSubtaskStatusEntry(const DtString& name,
33  DtReaderWriterRegistry* parentRegistry = 0);
34 
36  virtual ~DtSubtaskStatusEntry();
37 
39  DtSubtaskStatusEntry(const DtString & name, const DtSubtaskStatusEntry & orig,
40  DtReaderWriterRegistry * parentRegistry = 0);
41 
43  DtReaderWriterRegistry * parentRegistry = 0);
44 
47 
49 
50  virtual void setTaskId(int id);
51  virtual int taskId() const;
53 
55 
56  virtual void setComplete(bool v);
57  virtual bool complete() const;
59 
61 
62  virtual void setResult(bool v);
63  virtual bool result() const;
65 
67 
68  virtual void setCanceled(bool v);
69  virtual bool canceled() const;
71 
73 
74  virtual void setExecutingEntity(const DtUUID& entityName);
75  virtual DtSimObjectReference executingEntity() const;
77 
78 protected:
93 };
94 
96 
100 {
101 public:
102 
104  DtTaskStatusEntry(const DtString& name,
105  DtReaderWriterRegistry* parentRegistry = 0);
106 
108  virtual ~DtTaskStatusEntry();
109 
111  DtTaskStatusEntry(const DtString & name, const DtTaskStatusEntry & orig,
112  DtReaderWriterRegistry * parentRegistry = 0);
113 
116 
118  virtual void setControllerName(const DtString& name);
119  virtual const DtString& controllerName() const;
120 
122  virtual void setTaskMessage(const DtTaskMessage& taskMessage);
123  virtual DtTaskMessage* taskMessage() const;
124 
126  virtual void setTasked(bool flag);
127  virtual bool tasked() const;
128 
131  virtual void addPendingSubtaskId(int subtaskId);
132  virtual void removePendingSubtaskId(int subtaskId);
133  virtual bool findPendingSubtaskId(int subtaskId) const;
134  virtual const DtSubtaskStatusEntry* findSubtaskStatus(int subtaskId) const;
135  virtual DtSubtaskStatusEntry* findSubtaskStatus(int subtaskId);
136  virtual void removeAllPendingSubtaskIds();
137  virtual void printPendingSubtaskIds() const;
142  virtual void removeInactiveSubtaskStatus(int olderThanTaskId = -1);
143 
144  virtual const DtSubtaskStatusList& subtaskStatusList() const;
145  virtual DtSubtaskStatusList& subtaskStatusList();
146 
149  virtual void getSelf(DtlObjPtr args,
151  const DtVariableBindingsList& variableBindings = nullVariableReference());
152 
153 
154 protected:
155 
162 };
UUID is a unique ID wrapper class.
Definition: uuid.h:59
DtRwTemplatedIntList DtSubtaskIdList
Definition: taskStatusEntry.h:21
Definition: rwTemplatedList.h:214
This is a DtReaderWriter subclass which holds the status of a subtask that was issues by another task...
Definition: taskStatusEntry.h:28
Definition: taskMessageDescriptor.h:26
DtRwSimObjectReference myExecutingEntity
For tasks that are issued to other entities, and tracked in the subtask status list, this holds the name of the entity executing the task. For local subtasks, this is an empty string.
Definition: taskStatusEntry.h:92
The DtSimObjectReference is a shared pointer that can be used amongst many object for access to the u...
Definition: simObjectReference.h:26
Definition: readerWriter.h:85
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
Definition: readerWriterRegistry.h:39
Definition: asyncJobServer.h:37
DtRwBoolean myTasked
Definition: taskStatusEntry.h:158
Specialized reader/writer version of the shared object reference that will encapsulate the actual sha...
Definition: rwSimObjectReference.h:21
DtRwTemplatedListPtr< DtSubtaskStatusEntry, true > DtSubtaskStatusList
Definition: taskStatusEntry.h:95
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
Definition: asyncJobServer.h:38
DtRwBoolean myCanceled
Set to true if the task was canceled (i.e. replaced by another task)
Definition: taskStatusEntry.h:88
Instances of DtTaskStatusEntry hold the current tasking/subtasking state for a given component and ca...
Definition: taskStatusEntry.h:99
Description: Readable, Writable int.
Definition: rwInt.h:25
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
DtRwBoolean myResult
Once myComplete is true, this holds the success flag that was received in the task complete report...
Definition: taskStatusEntry.h:86
DtRwBoolean myComplete
Indicates whether a task-complete-report has been received for this subtask or not.
Definition: taskStatusEntry.h:83
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
Top level to read itself from an input stream. searchPath is passed down to all DtReaderWriter member...
static const DtVariableBindingsList & nullVariableReference()
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
DtRwInt myTaskId
The ID value which the subtask was started with.
Definition: taskStatusEntry.h:80
DtSubtaskStatusList mySubtaskStatusList
Holds status for all subtasks started by this task. This entry replaces the old (VRF 4...
Definition: taskStatusEntry.h:161
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
A DtTaskMsg is a DtRadioMsg with a pointer to a task. The type of the taskMsg is just the type of the...
Definition: taskMessage.h:21
DtRwString myControllerName
Definition: taskStatusEntry.h:156
DtTaskMessageDescriptor myTaskMessageDescriptor
Definition: taskStatusEntry.h:157

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)