Merge lp:~danilovesky/workcraft/trunk-bug-1439238 into lp:workcraft

Proposed by Danil Sokolov
Status: Merged
Merged at revision: 598
Proposed branch: lp:~danilovesky/workcraft/trunk-bug-1439238
Merge into: lp:workcraft
Diff against target: 214 lines (+69/-4)
8 files modified
FsmPlugin/src/org/workcraft/plugins/fsm/VisualFsm.java (+9/-0)
FsmPlugin/src/org/workcraft/plugins/fsm/VisualState.java (+1/-1)
FstPlugin/src/org/workcraft/plugins/fst/tools/FstToFsmConverter.java (+15/-0)
PetrifyPlugin/src/org/workcraft/plugins/petrify/PetrifyUtilitySettings.java (+24/-1)
PetrifyPlugin/src/org/workcraft/plugins/petrify/tools/PetrifySynthesisTechnologyMapping.java (+13/-2)
WorkcraftCore/src/org/workcraft/gui/graph/tools/AbstractModelConverter.java (+1/-0)
WorkcraftCore/src/org/workcraft/gui/graph/tools/DefaultModelConverter.java (+4/-0)
WorkcraftCore/src/org/workcraft/gui/graph/tools/ModelConverter.java (+2/-0)
To merge this branch: bzr merge lp:~danilovesky/workcraft/trunk-bug-1439238
Reviewer Review Type Date Requested Status
Danil Sokolov Approve
Review via email: mp+254961@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Danil Sokolov (danilovesky) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'FsmPlugin/src/org/workcraft/plugins/fsm/VisualFsm.java'
2--- FsmPlugin/src/org/workcraft/plugins/fsm/VisualFsm.java 2015-01-13 12:36:58 +0000
3+++ FsmPlugin/src/org/workcraft/plugins/fsm/VisualFsm.java 2015-04-01 17:50:09 +0000
4@@ -14,6 +14,7 @@
5 import org.workcraft.observation.HierarchyEvent;
6 import org.workcraft.observation.HierarchySupervisor;
7 import org.workcraft.observation.NodesAddingEvent;
8+import org.workcraft.plugins.petri.VisualPlace;
9 import org.workcraft.util.Hierarchy;
10
11 @DisplayName("Finite State Machine")
12@@ -76,4 +77,12 @@
13 return getMathModel().getName(state.getReferencedComponent());
14 }
15
16+ public Collection<VisualState> getVisualStates() {
17+ return Hierarchy.getDescendantsOfType(getRoot(), VisualState.class);
18+ }
19+
20+ public Collection<VisualEvent> getVisualSymbols() {
21+ return Hierarchy.getDescendantsOfType(getRoot(), VisualEvent.class);
22+ }
23+
24 }
25
26=== modified file 'FsmPlugin/src/org/workcraft/plugins/fsm/VisualState.java'
27--- FsmPlugin/src/org/workcraft/plugins/fsm/VisualState.java 2015-01-07 18:18:13 +0000
28+++ FsmPlugin/src/org/workcraft/plugins/fsm/VisualState.java 2015-04-01 17:50:09 +0000
29@@ -99,5 +99,5 @@
30 public State getReferencedState() {
31 return (State)getReferencedComponent();
32 }
33-
34+
35 }
36
37=== modified file 'FstPlugin/src/org/workcraft/plugins/fst/tools/FstToFsmConverter.java'
38--- FstPlugin/src/org/workcraft/plugins/fst/tools/FstToFsmConverter.java 2015-01-14 18:10:46 +0000
39+++ FstPlugin/src/org/workcraft/plugins/fst/tools/FstToFsmConverter.java 2015-04-01 17:50:09 +0000
40@@ -11,6 +11,7 @@
41 import org.workcraft.plugins.fsm.Symbol;
42 import org.workcraft.plugins.fsm.VisualEvent;
43 import org.workcraft.plugins.fsm.VisualFsm;
44+import org.workcraft.plugins.fsm.VisualState;
45 import org.workcraft.plugins.fst.Fst;
46 import org.workcraft.plugins.fst.Signal;
47 import org.workcraft.plugins.fst.SignalEvent;
48@@ -49,5 +50,19 @@
49 }
50 return dstConnection;
51 }
52+
53+
54+ @Override
55+ public void postprocessing() {
56+ VisualFst fst = getSrcModel();
57+ for (VisualState srcState: fst.getVisualStates()) {
58+ if (srcState.getReferencedState().isInitial()) {
59+ VisualState dstState = (VisualState)getSrcToDstNode(srcState);
60+ if (dstState != null) {
61+ dstState.getReferencedState().setInitial(true);
62+ }
63+ }
64+ }
65+ }
66
67 }
68
69=== modified file 'PetrifyPlugin/src/org/workcraft/plugins/petrify/PetrifyUtilitySettings.java'
70--- PetrifyPlugin/src/org/workcraft/plugins/petrify/PetrifyUtilitySettings.java 2015-01-21 09:41:44 +0000
71+++ PetrifyPlugin/src/org/workcraft/plugins/petrify/PetrifyUtilitySettings.java 2015-04-01 17:50:09 +0000
72@@ -38,14 +38,16 @@
73 private static final String keyDrawAstgArgs = prefix + ".draw_astg.args";
74 private static final String keyWriteSgCommand = prefix + ".write_sg.command";
75 private static final String keyWriteSgArgs = prefix + ".write_sg.args";
76+ private static final String keyGateLibrary = prefix + ".petrify.gateLibrary";
77 private static final String keyDebugTemporaryFiles = prefix + ".debugTemporaryFiles";
78
79 private static final String defaultPetrifyCommand = "petrify";
80- private static final String defaultPetrifyArgs = "-lib tools/petrify/petrify.lib";
81+ private static final String defaultPetrifyArgs = "";
82 private static final String defaultDrawAstgCommand = "draw_astg";
83 private static final String defaultDrawAstgArgs = "";
84 private static final String defaultWriteSgCommand = "write_sg";
85 private static final String defaultWriteSgArgs = "";
86+ private static final String defaultGateLibrary = "tools/petrify/petrify.lib";
87 private static final Boolean defaultDebugTemporaryFiles = false;
88
89 private static String petrifyCommand = defaultPetrifyCommand;
90@@ -54,6 +56,7 @@
91 private static String drawAstgArgs = defaultDrawAstgArgs;
92 private static String writeSgCommand = defaultWriteSgCommand;
93 private static String writeSgArgs = defaultWriteSgArgs;
94+ private static String gateLibrary = defaultGateLibrary;
95 private static Boolean debigTemporaryFiles = defaultDebugTemporaryFiles;
96
97 public PetrifyUtilitySettings() {
98@@ -117,6 +120,16 @@
99 }
100 });
101
102+ properties.add(new PropertyDeclaration<PetrifyUtilitySettings, String>(
103+ this, "Gate library for technology mapping", String.class) {
104+ protected void setter(PetrifyUtilitySettings object, String value) {
105+ PetrifyUtilitySettings.setGateLibrary(value);
106+ }
107+ protected String getter(PetrifyUtilitySettings object) {
108+ return PetrifyUtilitySettings.getGateLibrary();
109+ }
110+ });
111+
112 properties.add(new PropertyDeclaration<PetrifyUtilitySettings, Boolean>(
113 this, "Keep temporary files (debug)", Boolean.class) {
114 protected void setter(PetrifyUtilitySettings object, Boolean value) {
115@@ -141,6 +154,7 @@
116 setDrawAstgArgs(config.getString(keyDrawAstgArgs, defaultDrawAstgArgs));
117 setWriteSgCommand(config.getString(keyWriteSgCommand, defaultWriteSgCommand));
118 setWriteSgArgs(config.getString(keyWriteSgArgs, defaultWriteSgArgs));
119+ setGateLibrary(config.getString(keyGateLibrary, defaultGateLibrary));
120 setDebugTemporaryFiles(config.getBoolean(keyDebugTemporaryFiles, defaultDebugTemporaryFiles));
121 }
122
123@@ -152,6 +166,7 @@
124 config.set(keyDrawAstgArgs, getDrawAstgArgs());
125 config.set(keyWriteSgCommand, getWriteSgCommand());
126 config.set(keyWriteSgArgs, getWriteSgArgs());
127+ config.set(keyGateLibrary, getGateLibrary());
128 config.setBoolean(keyDebugTemporaryFiles, getDebugTemporaryFiles());
129 }
130
131@@ -212,6 +227,14 @@
132 public static void setWriteSgArgs(String value) {
133 writeSgArgs = value;
134 }
135+
136+ public static String getGateLibrary() {
137+ return gateLibrary;
138+ }
139+
140+ public static void setGateLibrary(String value) {
141+ gateLibrary = value;
142+ }
143
144 public static Boolean getDebugTemporaryFiles() {
145 return debigTemporaryFiles;
146
147=== modified file 'PetrifyPlugin/src/org/workcraft/plugins/petrify/tools/PetrifySynthesisTechnologyMapping.java'
148--- PetrifyPlugin/src/org/workcraft/plugins/petrify/tools/PetrifySynthesisTechnologyMapping.java 2015-01-26 12:46:03 +0000
149+++ PetrifyPlugin/src/org/workcraft/plugins/petrify/tools/PetrifySynthesisTechnologyMapping.java 2015-04-01 17:50:09 +0000
150@@ -1,11 +1,22 @@
151 package org.workcraft.plugins.petrify.tools;
152
153+import org.workcraft.plugins.petrify.PetrifyUtilitySettings;
154+
155 public class PetrifySynthesisTechnologyMapping extends PetrifySynthesis {
156
157 @Override
158 public String[] getSynthesisParameter() {
159- String[] result = new String[1];
160- result[0] = "-tm";
161+ String[] result;
162+ String gateLibrary = PetrifyUtilitySettings.getGateLibrary();
163+ if ((gateLibrary == null) || gateLibrary.isEmpty()) {
164+ result = new String[1];
165+ result[0] = "-tm";
166+ } else {
167+ result = new String[3];
168+ result[0] = "-tm";
169+ result[1] = "-lib";
170+ result[2] = gateLibrary;
171+ }
172 return result;
173 }
174
175
176=== modified file 'WorkcraftCore/src/org/workcraft/gui/graph/tools/AbstractModelConverter.java'
177--- WorkcraftCore/src/org/workcraft/gui/graph/tools/AbstractModelConverter.java 2015-01-20 16:51:42 +0000
178+++ WorkcraftCore/src/org/workcraft/gui/graph/tools/AbstractModelConverter.java 2015-04-01 17:50:09 +0000
179@@ -29,6 +29,7 @@
180 convertGroups();
181 // Connections must be converted the last as their shapes change with node relocation.
182 convertConnections();
183+ postprocessing();
184 }
185
186 @Override
187
188=== modified file 'WorkcraftCore/src/org/workcraft/gui/graph/tools/DefaultModelConverter.java'
189--- WorkcraftCore/src/org/workcraft/gui/graph/tools/DefaultModelConverter.java 2015-01-14 18:10:46 +0000
190+++ WorkcraftCore/src/org/workcraft/gui/graph/tools/DefaultModelConverter.java 2015-04-01 17:50:09 +0000
191@@ -39,6 +39,10 @@
192 @Override
193 public void preprocessing() {
194 }
195+
196+ @Override
197+ public void postprocessing() {
198+ }
199
200 @Override
201 public VisualPage convertPage(VisualPage srcPage) {
202
203=== modified file 'WorkcraftCore/src/org/workcraft/gui/graph/tools/ModelConverter.java'
204--- WorkcraftCore/src/org/workcraft/gui/graph/tools/ModelConverter.java 2015-01-14 18:10:46 +0000
205+++ WorkcraftCore/src/org/workcraft/gui/graph/tools/ModelConverter.java 2015-04-01 17:50:09 +0000
206@@ -22,6 +22,8 @@
207 public VisualNode getSrcToDstNode(VisualNode srcNode);
208
209 public void preprocessing();
210+ public void postprocessing();
211+
212 public VisualPage convertPage(VisualPage srcPage);
213 public VisualComponent convertComponent(VisualComponent srcComponent);
214 public VisualGroup convertGroup(VisualGroup srcGroup);

Subscribers

People subscribed via source and target branches