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() override;
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() override;
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, const DtReaderWriter::SearchPaths& searchPaths = DtReaderWriter::SearchPaths(),
150  const DtVariableBindingsList& variableBindings = nullVariableReference()) override;
151 
152 
153 protected:
154 
161 };
UUID is a unique ID wrapper class.
Definition: uuid.h:59
DtRwTemplatedIntList DtSubtaskIdList
Definition: taskStatusEntry.h:21
Definition: rwTemplatedList.h:213
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
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:157
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:160
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:155
DtTaskMessageDescriptor myTaskMessageDescriptor
Definition: taskStatusEntry.h:156

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)