VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
basePlanWidgetLogic.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
16 
20 
21 #include <matrix/vlVector.h>
22 
23 #include <vrfplan/plan.h>
24 #include <QtCore/QString>
25 
26 namespace makVrv
27 {
28  class DtDe;
29  class DtSimEntry;
30 }
31 
32 class DtRwTriggersList;
33 class DtSimBlock;
34 class DtStmtIndex;
35 class DtSetDataRequest;
36 class DtSimTask;
37 class DtSimCommand;
38 class DtSimMessage;
39 class DtEntityType;
40 
41 namespace makVrf
42 {
43  class DtPlanWidgetInterface;
44  class DtPlanListBoxItem;
45 
47  {
48 
49  public:
50 
53 
55  virtual ~DtBasePlanWidgetLogic();
56 
58  virtual void requestPlan(const std::vector<DtUUID>&) = 0;
59 
61  virtual bool sendPlan(bool reregister = true) = 0;
62 
63  virtual void planSelectionChanged() = 0;
64 
65  virtual void restartPlan() = 0;
66 
67  virtual void abandonPlan() = 0;
68 
69  virtual void replacePlan() = 0;
70 
71  virtual void setupGui(const makVrv::DtSelectionManager::IdSet&) = 0;
72 
73  virtual bool planIsModified() const = 0;
74 
75  virtual bool deleteStatement(const DtPlanListBoxItem*) = 0;
76 
77  virtual void deleteAllStatements() = 0;
78  virtual void triggerViewStateChanged(bool) = 0;
79 
80  virtual void addSetRequest(const DtSetDataRequest&) = 0;
81 
82  virtual void addTaskRequest(const DtSimTask&) = 0;
83 
84  virtual void addCommandRequest(DtSimCommand&) = 0;
85 
86  virtual void addConditional(const DtSimStatement& stmt) = 0;
87  virtual void addTrigger(const DtSimStatement& stmt, bool andSelect) = 0;
88 
89  virtual void selectExecutingTrigger(int) = 0;
90  virtual void editCurrentPlanStatement(const std::vector<makVrv::DtSimEntry*>&) = 0;
91 
92  virtual void finalizeObjectCreation(const DtVrfObjectManipulationHandlerBaseClass::ObjectManipulationData&) = 0;
93 
94  virtual bool editing() const = 0;
95 
96  virtual bool globalPlan() const;
97 
98  virtual void selectTrigger(int) = 0;
99 
100  virtual void enableReplacePlan();
101  virtual bool canPastePlan() const;
102 
103  virtual void removeTrigger(const DtUUID&) = 0;
104  virtual void renameTrigger(const DtUUID&, const DtString&) = 0;
105 
106  virtual void editTrigger(const std::vector<makVrv::DtSimEntry*>& states, const DtUUID&) = 0;
107 
108  virtual void selectExecutingTrigger() = 0;
109 
110  virtual DtRwTriggersList* triggers() = 0;
111 
112  virtual void cleanupUnusedTriggers(bool showNeverShowAgain = false) = 0;
113 
114  virtual void cleanup() = 0;
115 
116  public:
118  virtual void printPlan();
119 
121  virtual void copySelectedPlanStatement();
122  virtual void copyPlan();
123 
124  virtual void setPlanName(const DtUUID&);
125  virtual const DtUUID& planName() const;
126 
127  virtual void setMarkingTextTitle(const QString&);
128 
130  virtual void cancel(bool force = false);
131 
133  virtual void accept();
134 
137  virtual void connectSignals(const std::vector<makVrv::DtSimEntry*>& s);
138 
139  virtual void setTitle();
140 
142  virtual DtPlan* plan();
143 
144  virtual void setClosingBecauseObjectRemoved(bool b) { myClosingBecauseObjectRemoved = b; };
145  virtual bool closingBecauseObjectRemoved() const { return myClosingBecauseObjectRemoved; };
146 
147  protected:
148  virtual void receivedPlanCallback(DtSimMessage*);
149 
150  virtual void processReceivePlan(const DtUUID&,
151  bool isGlobal, const std::vector<DtSimStatement*>& statements,
152  const DtRwTriggersList&, const DtRwVariableBindings& variables) = 0;
153 
154  virtual void receivedPlanStatementCallback(DtSimMessage*);
155 
156  virtual void processPlanStatement(const DtUUID&, bool isGlobal, DtPlanStatus status,
157  bool reselect = true) = 0;
158  virtual void processReceiveCurrentStatement(const DtUUID&, bool isGlobal, DtPlanStatus status,
159  bool reselect = true) = 0;
160  virtual void processReceivePlanComplete(const DtUUID&, bool isGlobal) = 0;
161 
165  virtual void addStatementsToPlan(const std::vector<DtSimStatement*>& statements, bool append);
166 
167  virtual void displayPlan();
168  virtual void clearAllStatements();
169 
171  virtual void displayPlanStatusString(DtPlanStatus status);
172 
173  protected:
174  virtual void slot_objectAboutToBeRemoved(makVrv::DtSimObjectEntry&);
175 
176  protected:
180  std::vector<makVrv::DtSimEntry*> myConnectedTo;
184  };
185 }
UUID is a unique ID wrapper class.
Definition: rwUUID.h:229
makVrv::DtDe & myDe
Definition: basePlanWidgetLogic.h:177
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
bool myIgnoreNextPlanStatementReceipt
Definition: basePlanWidgetLogic.h:183
std::vector< makVrv::DtSimEntry * > myConnectedTo
Definition: basePlanWidgetLogic.h:180
Contains makVrv:DtSelectionManager class.
makVrv::DtSignalConnectionManager myConnectionManager
Definition: basePlanWidgetLogic.h:181
class DtStmtIndex:
Definition: stmtIndex.h:24
Definition: planWidgetInterface.h:38
DtPlanWidgetInterface * myInterface
Definition: basePlanWidgetLogic.h:178
ReaderWriter object that maintains a list of reader-writer variable bindings. It keeps a list of name...
Definition: rwVariableBindings.h:27
class DtSimBlock:
Definition: simBlock.h:27
DtSetDataRequest is an abstract base class from which real setDataRequests can derive. It manages the read/write capability; derived classes need only use and register read/writatble data types for derived information.
Definition: setDataRequest.h:41
Definition: planListBoxItem.h:29
A DtSimObjectEntry is an entry for a persistent simulation object like an entity. ...
Definition: DtSimObjectEntry.h:22
Contains makVrv::DtSimObjectEntry class.
File: simMsg.h.
Definition: simMessage.h:35
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
virtual bool closingBecauseObjectRemoved() const
Definition: basePlanWidgetLogic.h:145
DtSimCommand is an abstract base class from which commands can derive. It manages the read/write capa...
Definition: simCommand.h:32
class DtPlan:
Definition: plan.h:92
Small container class that holds the status of a running DtPlan.
Definition: plan.h:45
Definition: vrfObjectManipulationHandlerBaseClass.h:492
Base class to provide boost signal/slot management.
class DtSimStatement:
Definition: simStatement.h:38
DtSimTask is an abstract base class from which real tasks can derive. It manages the read/write capab...
Definition: simTask.h:30
virtual void setClosingBecauseObjectRemoved(bool b)
Definition: basePlanWidgetLogic.h:144
bool myClosingBecauseObjectRemoved
Definition: basePlanWidgetLogic.h:182
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
Definition: basePlanWidgetLogic.h:46
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32
Instances of DtRwTriggersList are lists of readable, writeable when statements (triggers) The list co...
Definition: rwTriggersList.h:21
DtUUID myName
Definition: basePlanWidgetLogic.h:179

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)