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();
32 
34  DtSuspendedTaskInfo(const DtString & name, const DtSuspendedTaskInfo & orig,
35  DtReaderWriterRegistry * parentRegistry = 0);
36 
39 
40  bool operator==(const DtSuspendedTaskInfo& rhs) {return false;};
41  bool operator!=(const DtSuspendedTaskInfo& rhs) {return !operator==(rhs);};
42 
43  virtual void putSelf(std::string& fp, int indentLevel = 0,
44  bool writeUnspecified = false, const DtFilename& path =
45  DtFilename::nullFilename());
46 
47  virtual void getSelf(DtlObjPtr args,
49  const DtVariableBindingsList& variableBindings = nullVariableReference());
50 
51  virtual DtSimTaskStatePtr taskState();
52  virtual void setTaskState(DtSimTaskStatePtr taskState);
53 
54  virtual DtSuspendedTaskInfoList& subtaskStateList();
55  virtual const DtSuspendedTaskInfoList& subtaskStateList() const;
56 
59  virtual bool topLevelTaskSuspended() const;
60  virtual void setTopLeveltaskSuspended(bool);
61 
62 protected:
66 };
67 
68 
69 
73 {
74 public:
77  DtReaderWriterRegistry* parentRegistry = 0);
78 
80  virtual ~DtSuspendedTaskStatusEntry();
81 
84  DtReaderWriterRegistry * parentRegistry = 0);
86  DtReaderWriterRegistry * parentRegistry = 0);
87 
90 
92  bool operator!=(const DtSuspendedTaskStatusEntry& rhs) {return true;};
93 
94  virtual void setSuspendId(int id);
95  virtual int suspendId() const;
96 
97  virtual DtSuspendedTaskInfoList& suspendedTaskInfoList();
98  virtual const DtSuspendedTaskInfoList& suspendedTaskInfoList() const;
99 
104  virtual void setKeepEvenIfConflicting(bool b);
105  virtual bool keepEvenIfConflicting() const;
106 
107 protected:
111 
112 };
113 
115 class DT_DLL_vrfobjcore DtSuspendedTaskStatusList : public DtRwTemplatedListPtr<DtSuspendedTaskStatusEntry, true>
116 {
117 public:
118  DtSuspendedTaskStatusList(const DtString& name, DtReaderWriterRegistry* parentRegistry = NULL);
119 
121  DtReaderWriterRegistry* parentRegistry = NULL);
122 
123  virtual ~DtSuspendedTaskStatusList();
124 
126  virtual DtSuspendedTaskStatusEntry* findEntryBySuspendId(int suspendId);
127 
128 };
bool operator==(const DtReaderWriter &) const
Equivalence operator.
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=DtReaderWriter::SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
Overridden to get pending-subtask-ids member from VRF 4.0.4 and earlier OOB files, and translate that data into mySubtaskStatusList.
All the information about a single suspended task. This information should be sufficient to resume th...
Definition: suspendedTaskInfo.h:23
bool operator==(const DtSuspendedTaskInfo &rhs)
Definition: suspendedTaskInfo.h:40
DtRwInt mySuspendId
Definition: suspendedTaskInfo.h:108
DtRwBoolean myTopLevelTaskIsSuspended
Definition: suspendedTaskInfo.h:65
Definition: readerWriter.h:85
DtTaskStatusEntry & operator=(const DtTaskStatusEntry &orig)
assignment operator
DtRwBoolean myKeepEvenIfConflicting
Definition: suspendedTaskInfo.h:109
DtSuspendedTaskInfoList mySuspendedTaskInfoList
Definition: suspendedTaskInfo.h:110
Definition: readerWriterRegistry.h:39
bool operator!=(const DtSuspendedTaskInfo &rhs)
Definition: suspendedTaskInfo.h:41
bool operator!=(const DtSuspendedTaskStatusEntry &rhs)
Required by DtReTemplatedList. This always returns true, so classes are never considered equal...
Definition: suspendedTaskInfo.h:92
DtBoost::shared_ptr< DtSimTaskState > DtSimTaskStatePtr
Definition: taskAndTaskStateDefines.h:18
#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:115
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:72
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:63
DtSuspendedTaskInfoList mySubtaskStateList
Definition: suspendedTaskInfo.h:64
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
DtRwTemplatedListPtr< DtSuspendedTaskInfo, true > DtSuspendedTaskInfoList
Definition: suspendedTaskInfo.h:17

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)