VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
suspendedTaskInfo.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
11 #include "vrftasks/simTaskState.h"
12 #include "vrfmsgs/taskMessage.h"
14 #include <list>
16 
18 
20 
24 {
25 public:
27  DtSuspendedTaskInfo(const DtString& name,
28  DtReaderWriterRegistry* parentRegistry = 0);
29 
31  virtual ~DtSuspendedTaskInfo() override;
32 
34  DtSuspendedTaskInfo(const DtString & name, const DtSuspendedTaskInfo & orig,
35  DtReaderWriterRegistry * parentRegistry = 0);
36 
39 
40  bool operator==(const DtSuspendedTaskInfo& rhs) const {return false;};
41  bool operator!=(const DtSuspendedTaskInfo& rhs) const {return !operator==(rhs);};
42 
43  virtual void putSelf(std::string& fp, int indentLevel = 0, bool writeUnspecified = false,
44  const DtFilename& path = DtFilename::nullFilename()) override;
45 
46  virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths = DtReaderWriter::SearchPaths(),
47  const DtVariableBindingsList& variableBindings = nullVariableReference()) override;
48 
49  virtual DtSimTaskStatePtr taskState();
50  virtual void setTaskState(DtSimTaskStatePtr taskState);
51 
52  virtual DtSuspendedTaskInfoList& subtaskStateList();
53  virtual const DtSuspendedTaskInfoList& subtaskStateList() const;
54 
57  virtual bool topLevelTaskSuspended() const;
58  virtual void setTopLeveltaskSuspended(bool);
59 
60 protected:
64 };
65 
66 
67 
71 {
72 public:
75  DtReaderWriterRegistry* parentRegistry = 0);
76 
78  virtual ~DtSuspendedTaskStatusEntry() override;
79 
82  DtReaderWriterRegistry * parentRegistry = 0);
84  DtReaderWriterRegistry * parentRegistry = 0);
85 
88 
90  bool operator!=(const DtSuspendedTaskStatusEntry& rhs) {return true;};
91 
92  virtual void setSuspendId(int id);
93  virtual int suspendId() const;
94 
95  virtual DtSuspendedTaskInfoList& suspendedTaskInfoList();
96  virtual const DtSuspendedTaskInfoList& suspendedTaskInfoList() const;
97 
102  virtual void setKeepEvenIfConflicting(bool b);
103  virtual bool keepEvenIfConflicting() const;
104 
105 protected:
109 
110 };
111 
113 class DT_DLL_vrfobjcore DtSuspendedTaskStatusList : public DtRwTemplatedListPtr<DtSuspendedTaskStatusEntry, true>
114 {
115 public:
116  DtSuspendedTaskStatusList(const DtString& name, DtReaderWriterRegistry* parentRegistry = NULL);
117 
119  DtReaderWriterRegistry* parentRegistry = NULL);
120 
121  virtual ~DtSuspendedTaskStatusList() override;
122 
124  virtual DtSuspendedTaskStatusEntry* findEntryBySuspendId(int suspendId);
125 
126 };
bool operator==(const DtReaderWriter &) const
Equivalence operator.
bool operator==(const DtSuspendedTaskInfo &rhs) const
Definition: suspendedTaskInfo.h:40
All the information about a single suspended task. This information should be sufficient to resume th...
Definition: suspendedTaskInfo.h:23
DtRwInt mySuspendId
Definition: suspendedTaskInfo.h:106
DtRwBoolean myTopLevelTaskIsSuspended
Definition: suspendedTaskInfo.h:63
Definition: readerWriter.h:85
DtTaskStatusEntry & operator=(const DtTaskStatusEntry &orig)
assignment operator
DtRwBoolean myKeepEvenIfConflicting
Definition: suspendedTaskInfo.h:107
DtSuspendedTaskInfoList mySuspendedTaskInfoList
Definition: suspendedTaskInfo.h:108
Definition: readerWriterRegistry.h:39
std::shared_ptr< DtSimTaskState > DtSimTaskStatePtr
Definition: taskAndTaskStateDefines.h:18
bool operator!=(const DtSuspendedTaskStatusEntry &rhs)
Required by DtReTemplatedList. This always returns true, so classes are never considered equal...
Definition: suspendedTaskInfo.h:90
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=DtReaderWriter::SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference()) override
Overridden to get pending-subtask-ids member from VRF 4.0.4 and earlier OOB files, and translate that data into mySubtaskStatusList.
#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
Instances of DtTaskStatusEntry hold the current tasking/subtasking state for a given component and ca...
Definition: taskStatusEntry.h:99
A list of DtSuspendedTaskStatusEntry instances, each representing a different suspend ID...
Definition: suspendedTaskInfo.h:113
Description: Readable, Writable int.
Definition: rwInt.h:25
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
An entry in the DtSuspendedTaskStatusList This contains one or more suspended tasks that were suspend...
Definition: suspendedTaskInfo.h:70
virtual void putSelf(std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
Top level call to write itself to file. If write unspecified is true, will write entries that are uns...
static const DtVariableBindingsList & nullVariableReference()
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
DtSimTaskStatePtr myTaskState
Definition: suspendedTaskInfo.h:61
DtSuspendedTaskInfoList mySubtaskStateList
Definition: suspendedTaskInfo.h:62
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
bool operator!=(const DtSuspendedTaskInfo &rhs) const
Definition: suspendedTaskInfo.h:41
DtRwTemplatedListPtr< DtSuspendedTaskInfo, true > DtSuspendedTaskInfoList
Definition: suspendedTaskInfo.h:17

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)