VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
syncMatrixLogic.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 #include <vrfutil/rwUUID.h>
17 #include <vlpi/simulationAddress.h>
19 
20 #include <map>
21 #include <string>
22 
23 namespace makVrv
24 {
25  class DtDe;
26 }
27 
28 class DtSimMessage;
29 class QString;
30 class QTreeWidgetItem;
31 
32 namespace makVrf
33 {
34  class DtVrfBackendState;
35 
36  class DtSyncMatrixDialogInterface;
37  class DtSyncMatrixAddObjectsDialog;
38  class DtSyncMatrixConditionalDialog;
39  class DtSyncMatrixPlanWidget;
40 
42  {
43  public:
44 
47 
49  virtual ~DtSyncMatrixLogic();
50 
51  virtual void newSyncMatrix();
52  virtual void renameSyncMatrix(const DtUUID& syncMatrix, const QString& name);
53  virtual void deleteSyncMatrix(const DtUUID& syncMatrix);
54 
55  virtual void setSelectedSyncMatrix(const DtUUID& syncMatrix);
56  virtual const DtUUID& selectedSyncMatrix();
57 
58  virtual void addSyncMatrixPhase(const DtUUID& syncMatrix, int phaseIndex);
59  virtual void deleteSyncMatrixPhase(const DtUUID& syncMatrix, const QString& phaseName);
60  virtual void editSyncMatrixPhase(const DtUUID& syncMatrix, const QString& phaseName, int phaseIndex);
61  virtual void moveSyncMatrixPhase(const DtUUID& syncMatrix, const QString& phaseName, int phaseIndex);
62 
63  virtual void addObjectsToSyncMatrix(const DtUUID& syncMatrix);
64  virtual void removeObjectFromSyncMatrix(const DtUUID& syncMatrix, const DtUUID& object);
65 
66  virtual void addTopLevelObjectToInterface(const DtUUID& syncMatrix, const DtUUID& uuid);
67  virtual void buildObjectHierarchy(const DtUUID& syncMatrix, makVrv::DtUniqueID id, QTreeWidgetItem* parent);
68  virtual void setObjectPlansStatusInInterface(const DtUUID& syncMatrix, const DtUUID& objectUUID, QTreeWidgetItem* objectItem = NULL);
69 
70  virtual void renameObjectInInterface(const DtUUID& object, const DtString& name);
71 
72  virtual void setPlan(const DtUUID& syncMatrix, const DtUUID& object, const QString& phaseName);
73  virtual void removePlan(const DtUUID& syncMatrix, const DtUUID& object, const QString& phaseName);
74  virtual void copyPlan(const DtUUID& syncMatrix, const DtUUID& object, const QString& phaseName);
75  virtual void pastePlan(const DtUUID& syncMatrix, const DtUUID& object, const QString& phaseName);
76  virtual void activatePlan(const DtUUID& syncMatrix, const DtUUID& object, const QString& phaseName, bool activate);
77 
78  virtual void destroySubDialogs();
79  protected:
80  virtual QString uniqueSyncMatrixName() const;
81  virtual QString uniqueSyncMatrixPhaseName() const;
82 
83  virtual void slot_clearSyncMatrices();
84  virtual void slot_receivedSyncMatrixInfo(const DtUUID& syncMatrix);
85  virtual void slot_receivedRenameSyncMatrix(const DtUUID& syncMatrix, const DtString& name);
86  virtual void slot_receivedRemoveSyncMatrix(const DtUUID& syncMatrix);
87 
88  virtual void slot_enableAddAndRenameSyncMatrix(bool enable);
89 
90  virtual void slot_syncMatrixPhaseUpdate(const DtUUID& syncMatrix);
91 
92  virtual void slot_objectsSelected(const DtUUID& syncMatrix, const std::vector<DtUUID>& objects);
93  virtual void slot_addObjectsDialogDestroyed();
94 
95  virtual void slot_receivedSyncMatrixObjectsList(const DtUUID& syncMatrix);
96  virtual void slot_syncMatrixObjectUpdated(const DtUUID& syncMatrix, const DtUUID& object);
97  virtual void slot_syncMatrixObjectRenamed(const DtUUID& object, const DtString& name);
98 
99  virtual void slot_conditionComplete(const DtUUID& syncMatrix, const QString& origPhaseName, int phaseIndex, const QString& newPhaseName, const DtSimCondExpr* expression);
100  virtual void slot_conditionalDialogDestroyed();
101 
102  virtual void slot_receivedMoveToPhase(const DtUUID&, const DtString& requestedPhase, const DtString& prevPhase, bool prevPhaseCompleted);
103 
104  virtual void slot_receivedPlanStatus(const DtUUID& object, const DtString& phaseName, const DtString& planSummary, bool valid, bool activated);
105 
106  virtual void slot_planWidgetDestroyed();
107 
108  virtual void slot_uuidChanged(const DtUUID& oldUUID, const DtUUID& newUUID);
109 
110  protected:
114 
119 
120  };
121 }
UUID is a unique ID wrapper class.
Definition: rwUUID.h:229
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
makVrv::DtDe & myDe
Definition: syncMatrixLogic.h:111
DtSyncMatrixPlanWidget * myPlanWidget
Definition: syncMatrixLogic.h:117
Contains the DtUUID class declaration.
Definition: syncMatrixPlanWidget.h:23
DtSyncMatrixAddObjectsDialog * myAddObjectsDialog
Definition: syncMatrixLogic.h:115
DtSyncMatrixConditionalDialog * myConditionalDialog
Definition: syncMatrixLogic.h:116
Contains makVrf:DtSharedVrfVrlApplicationSettings class. This class will share settings between the d...
bool myNextAddIsSelect
Definition: syncMatrixLogic.h:118
File: simMsg.h.
Definition: simMessage.h:35
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Definition: syncMatrixConditionalDialog.h:24
Definition: syncMatrixLogic.h:41
DtSimCondExpr is an abstract base class representing various Conditional Expressions used by the Plan...
Definition: simCondExpr.h:53
Base class to provide boost signal/slot management.
Definition: syncMatrixAddObjectsDialog.h:20
Definition: syncMatrixDialogInterface.h:30
DtSyncMatrixDialogInterface * myInterface
Definition: syncMatrixLogic.h:112
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
makVrv::DtSignalConnectionManager myConnections
Definition: syncMatrixLogic.h:113

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)