VR-Forces 4.2 Class Documentation
DtBasePlanWidgetLogic.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 
15 #include <vrvUtil/DtSignalConnectionManager.h>
16 
17 #include <vrvCore/DtSelectionManager.h>
18 #include <vrvCore/DtSimObjectEntry.h>
19 
20 #include <matrix/vlVector.h>
21 
22 #include <vrfplan/plan.h>
23 #include <QtCore/QString>
24 
25 namespace makVrv
26 {
27  class DtDe;
28  class DtSimEntry;
29 }
30 
31 class DtSimBlock;
32 class DtStmtIndex;
33 class DtSetDataRequest;
34 class DtSimTask;
35 class DtSimCommand;
36 class DtEntityType;
37 
38 namespace makVrf
39 {
40  class DtPlanWidgetInterface;
41  class DtPlanListBoxItem;
42 
44  {
45 
46  public:
47 
49  DtBasePlanWidgetLogic(makVrv::DtDe& de, DtPlanWidgetInterface* iFace );
50 
52  virtual ~DtBasePlanWidgetLogic();
53 
55  virtual void requestPlan(const std::vector<std::string>&) = 0;
56 
58  virtual bool sendPlan(bool reregister = true) = 0;
59 
60  virtual void planSelectionChanged() = 0;
61 
62  virtual void restartPlan() = 0;
63 
64  virtual void abandonPlan() = 0;
65 
66  virtual void replacePlan() = 0;
67 
68  virtual void enableReplacePlan() = 0;
69 
70  virtual bool planIsModified() const = 0;
71 
72  virtual bool deleteStatement(const DtPlanListBoxItem*) = 0;
73 
74  virtual void deleteAllStatements() = 0;
75 
76  virtual void addSetRequest(const DtSetDataRequest&) = 0;
77 
78  virtual void addTaskRequest(const DtSimTask&) = 0;
79 
80  virtual void addCommandRequest(DtSimCommand&) = 0;
81 
82  virtual void addConditional(const DtSimStatement& stmt) = 0;
83 
84  virtual void editCurrentPlanStatement(const std::vector<makVrv::DtSimEntry*>&) = 0;
85 
86  virtual void finalizeObjectCreation(const DtEntityType&, std::string name, int, const std::vector<DtVector>&, double, bool, bool) = 0;
87 
88  virtual bool editing() const = 0;
89 
90  public:
92  virtual void printPlan();
93 
95  virtual void copyPlan();
96 
97  virtual void setPlanName(const QString&);
98  virtual QString planName() const;
99 
101  virtual void cancel(bool force = false);
102 
104  virtual void accept();
105 
108  virtual void connectSignals(const std::vector<makVrv::DtSimEntry*>& s);
109 
110  virtual void setTitle();
111 
112  protected:
113  virtual void receivedPlanCallback(DtSimMessage*);
114 
115  virtual void processReceivePlan(const DtString& name,
116  bool isGlobal, const DtList& statements) = 0;
117 
118  virtual void receivedPlanStatementCallback(DtSimMessage*);
119 
120  virtual void processPlanStatement(const DtString& name, bool isGlobal, DtPlanStatus status) = 0;
121  virtual void processReceiveCurrentStatement(const DtString& name, bool isGlobal, DtPlanStatus status) = 0;
122  virtual void processReceivePlanComplete(const DtString& name, bool isGlobal) = 0;
123 
126  virtual DtPlanListBoxItem* findItemByIndex(int statementIndex);
127 
129  DtPlanListBoxItem* findLastItemByIndex(int statementIndex);
130 
134  virtual void addStatementsToPlan(const DtList& statements, bool append);
135 
136  virtual void displayPlan();
137  virtual void displayStatement(const DtStmtIndex& stmt, const DtPlanListBoxItem* parentItem);
138  virtual void displayBlock(DtSimBlock* block, const DtPlanListBoxItem* parentItem);
139  virtual void clearDisplay();
140  virtual void clearAllStatements();
141 
143  virtual void displayPlanStatusString(DtPlanStatus status);
144 
145  protected:
146  virtual void slot_objectAboutToBeRemoved(makVrv::DtSimObjectEntry&);
147 
148  protected:
149  makVrv::DtDe& myDe;
152  QString myName;
153  std::vector<makVrv::DtSimEntry*> myConnectedTo;
154  makVrv::DtSignalConnectionManager myConnectionManager;
155  };
156 }

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)