Skip to content

Commit ce21b5e

Browse files
committed
Implement slice index ports
1 parent 3d83772 commit ce21b5e

File tree

5 files changed

+387
-10
lines changed

5 files changed

+387
-10
lines changed

src/Core/Algorithms/Math/GetMatrixSliceAlgo.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,13 @@ namespace SCIRun {
5050
GetMatrixSliceAlgo();
5151
virtual AlgorithmOutput run_generic(const AlgorithmInput& input) const override;
5252
boost::tuple<Datatypes::MatrixHandle, int> runImpl(Datatypes::MatrixHandle matrix, int index, bool getColumn) const;
53+
54+
enum PlayMode
55+
{
56+
PLAY = 1,
57+
PAUSE = 2
58+
};
59+
5360
private:
5461
void checkIndex(int index, int max) const;
5562
};
Lines changed: 360 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,360 @@
1+
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
2+
<!DOCTYPE boost_serialization>
3+
<boost_serialization signature="serialization::archive" version="10">
4+
<networkFile class_id="0" tracking_level="0" version="2">
5+
<networkInfo class_id="1" tracking_level="0" version="0">
6+
<modules class_id="2" tracking_level="0" version="0">
7+
<count>6</count>
8+
<item_version>0</item_version>
9+
<item class_id="3" tracking_level="0" version="0">
10+
<first>CreateMatrix:2</first>
11+
<second class_id="4" tracking_level="0" version="0">
12+
<module class_id="5" tracking_level="0" version="0">
13+
<package_name_>SCIRun</package_name_>
14+
<category_name_>Math</category_name_>
15+
<module_name_>CreateMatrix</module_name_>
16+
</module>
17+
<state class_id="6" tracking_level="0" version="0">
18+
<stateMap class_id="7" tracking_level="0" version="0">
19+
<count>1</count>
20+
<item_version>0</item_version>
21+
<item class_id="8" tracking_level="0" version="0">
22+
<first class_id="9" tracking_level="0" version="0">
23+
<name>TextEntry</name>
24+
</first>
25+
<second class_id="10" tracking_level="0" version="0">
26+
<name>TextEntry</name>
27+
<value class_id="11" tracking_level="0" version="0">
28+
<which>2</which>
29+
<value>1 2 3
30+
4 5 6</value>
31+
</value>
32+
</second>
33+
</item>
34+
</stateMap>
35+
</state>
36+
</second>
37+
</item>
38+
<item>
39+
<first>EvaluateLinearAlgebraUnary:4</first>
40+
<second>
41+
<module>
42+
<package_name_>SCIRun</package_name_>
43+
<category_name_>Math</category_name_>
44+
<module_name_>EvaluateLinearAlgebraUnary</module_name_>
45+
</module>
46+
<state>
47+
<stateMap>
48+
<count>3</count>
49+
<item_version>0</item_version>
50+
<item>
51+
<first>
52+
<name>FunctionString</name>
53+
</first>
54+
<second>
55+
<name>FunctionString</name>
56+
<value>
57+
<which>2</which>
58+
<value>x+10</value>
59+
</value>
60+
</second>
61+
</item>
62+
<item>
63+
<first>
64+
<name>Operator</name>
65+
</first>
66+
<second>
67+
<name>Operator</name>
68+
<value>
69+
<which>0</which>
70+
<value>2</value>
71+
</value>
72+
</second>
73+
</item>
74+
<item>
75+
<first>
76+
<name>ScalarValue</name>
77+
</first>
78+
<second>
79+
<name>ScalarValue</name>
80+
<value>
81+
<which>1</which>
82+
<value>2</value>
83+
</value>
84+
</second>
85+
</item>
86+
</stateMap>
87+
</state>
88+
</second>
89+
</item>
90+
<item>
91+
<first>GetMatrixSlice:0</first>
92+
<second>
93+
<module>
94+
<package_name_>SCIRun</package_name_>
95+
<category_name_>Math</category_name_>
96+
<module_name_>GetMatrixSlice</module_name_>
97+
</module>
98+
<state>
99+
<stateMap>
100+
<count>3</count>
101+
<item_version>0</item_version>
102+
<item>
103+
<first>
104+
<name>IsSliceColumn</name>
105+
</first>
106+
<second>
107+
<name>IsSliceColumn</name>
108+
<value>
109+
<which>3</which>
110+
<value>1</value>
111+
</value>
112+
</second>
113+
</item>
114+
<item>
115+
<first>
116+
<name>MaxIndex</name>
117+
</first>
118+
<second>
119+
<name>MaxIndex</name>
120+
<value>
121+
<which>0</which>
122+
<value>2</value>
123+
</value>
124+
</second>
125+
</item>
126+
<item>
127+
<first>
128+
<name>SliceIndex</name>
129+
</first>
130+
<second>
131+
<name>SliceIndex</name>
132+
<value>
133+
<which>0</which>
134+
<value>0</value>
135+
</value>
136+
</second>
137+
</item>
138+
</stateMap>
139+
</state>
140+
</second>
141+
</item>
142+
<item>
143+
<first>GetMatrixSlice:3</first>
144+
<second>
145+
<module>
146+
<package_name_>SCIRun</package_name_>
147+
<category_name_>Math</category_name_>
148+
<module_name_>GetMatrixSlice</module_name_>
149+
</module>
150+
<state>
151+
<stateMap>
152+
<count>3</count>
153+
<item_version>0</item_version>
154+
<item>
155+
<first>
156+
<name>IsSliceColumn</name>
157+
</first>
158+
<second>
159+
<name>IsSliceColumn</name>
160+
<value>
161+
<which>3</which>
162+
<value>1</value>
163+
</value>
164+
</second>
165+
</item>
166+
<item>
167+
<first>
168+
<name>MaxIndex</name>
169+
</first>
170+
<second>
171+
<name>MaxIndex</name>
172+
<value>
173+
<which>0</which>
174+
<value>2</value>
175+
</value>
176+
</second>
177+
</item>
178+
<item>
179+
<first>
180+
<name>SliceIndex</name>
181+
</first>
182+
<second>
183+
<name>SliceIndex</name>
184+
<value>
185+
<which>0</which>
186+
<value>0</value>
187+
</value>
188+
</second>
189+
</item>
190+
</stateMap>
191+
</state>
192+
</second>
193+
</item>
194+
<item>
195+
<first>ReportMatrixInfo:1</first>
196+
<second>
197+
<module>
198+
<package_name_>SCIRun</package_name_>
199+
<category_name_>Math</category_name_>
200+
<module_name_>ReportMatrixInfo</module_name_>
201+
</module>
202+
<state>
203+
<stateMap>
204+
<count>0</count>
205+
<item_version>0</item_version>
206+
</stateMap>
207+
</state>
208+
</second>
209+
</item>
210+
<item>
211+
<first>ReportMatrixInfo:5</first>
212+
<second>
213+
<module>
214+
<package_name_>SCIRun</package_name_>
215+
<category_name_>Math</category_name_>
216+
<module_name_>ReportMatrixInfo</module_name_>
217+
</module>
218+
<state>
219+
<stateMap>
220+
<count>0</count>
221+
<item_version>0</item_version>
222+
</stateMap>
223+
</state>
224+
</second>
225+
</item>
226+
</modules>
227+
<connections class_id="12" tracking_level="0" version="0">
228+
<count>6</count>
229+
<item_version>0</item_version>
230+
<item class_id="13" tracking_level="0" version="0">
231+
<moduleId1_>CreateMatrix:2</moduleId1_>
232+
<port1_ class_id="14" tracking_level="0" version="0">
233+
<name>EnteredMatrix</name>
234+
<id>0</id>
235+
</port1_>
236+
<moduleId2_>EvaluateLinearAlgebraUnary:4</moduleId2_>
237+
<port2_>
238+
<name>InputMatrix</name>
239+
<id>0</id>
240+
</port2_>
241+
</item>
242+
<item>
243+
<moduleId1_>CreateMatrix:2</moduleId1_>
244+
<port1_>
245+
<name>EnteredMatrix</name>
246+
<id>0</id>
247+
</port1_>
248+
<moduleId2_>GetMatrixSlice:0</moduleId2_>
249+
<port2_>
250+
<name>InputMatrix</name>
251+
<id>0</id>
252+
</port2_>
253+
</item>
254+
<item>
255+
<moduleId1_>EvaluateLinearAlgebraUnary:4</moduleId1_>
256+
<port1_>
257+
<name>Result</name>
258+
<id>0</id>
259+
</port1_>
260+
<moduleId2_>GetMatrixSlice:3</moduleId2_>
261+
<port2_>
262+
<name>InputMatrix</name>
263+
<id>0</id>
264+
</port2_>
265+
</item>
266+
<item>
267+
<moduleId1_>GetMatrixSlice:0</moduleId1_>
268+
<port1_>
269+
<name>OutputMatrix</name>
270+
<id>0</id>
271+
</port1_>
272+
<moduleId2_>ReportMatrixInfo:1</moduleId2_>
273+
<port2_>
274+
<name>InputMatrix</name>
275+
<id>0</id>
276+
</port2_>
277+
</item>
278+
<item>
279+
<moduleId1_>GetMatrixSlice:0</moduleId1_>
280+
<port1_>
281+
<name>Selected_Index</name>
282+
<id>0</id>
283+
</port1_>
284+
<moduleId2_>GetMatrixSlice:3</moduleId2_>
285+
<port2_>
286+
<name>Current_Index</name>
287+
<id>0</id>
288+
</port2_>
289+
</item>
290+
<item>
291+
<moduleId1_>GetMatrixSlice:3</moduleId1_>
292+
<port1_>
293+
<name>OutputMatrix</name>
294+
<id>0</id>
295+
</port1_>
296+
<moduleId2_>ReportMatrixInfo:5</moduleId2_>
297+
<port2_>
298+
<name>InputMatrix</name>
299+
<id>0</id>
300+
</port2_>
301+
</item>
302+
</connections>
303+
</networkInfo>
304+
<modulePositions class_id="15" tracking_level="0" version="0">
305+
<count>6</count>
306+
<item_version>0</item_version>
307+
<item class_id="16" tracking_level="0" version="0">
308+
<first>CreateMatrix:2</first>
309+
<second class_id="17" tracking_level="0" version="0">
310+
<first>-1900</first>
311+
<second>-1596</second>
312+
</second>
313+
</item>
314+
<item>
315+
<first>EvaluateLinearAlgebraUnary:4</first>
316+
<second>
317+
<first>-1672</first>
318+
<second>-1444</second>
319+
</second>
320+
</item>
321+
<item>
322+
<first>GetMatrixSlice:0</first>
323+
<second>
324+
<first>-1900</first>
325+
<second>-1216</second>
326+
</second>
327+
</item>
328+
<item>
329+
<first>GetMatrixSlice:3</first>
330+
<second>
331+
<first>-1520</first>
332+
<second>-1216</second>
333+
</second>
334+
</item>
335+
<item>
336+
<first>ReportMatrixInfo:1</first>
337+
<second>
338+
<first>-1900</first>
339+
<second>-1064</second>
340+
</second>
341+
</item>
342+
<item>
343+
<first>ReportMatrixInfo:5</first>
344+
<second>
345+
<first>-1520</first>
346+
<second>-1064</second>
347+
</second>
348+
</item>
349+
</modulePositions>
350+
<moduleNotes class_id="18" tracking_level="0" version="0">
351+
<count>0</count>
352+
<item_version>0</item_version>
353+
</moduleNotes>
354+
<connectionNotes>
355+
<count>0</count>
356+
<item_version>0</item_version>
357+
</connectionNotes>
358+
</networkFile>
359+
</boost_serialization>
360+

src/Interface/Modules/Math/GetMatrixSliceDialog.cc

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -99,13 +99,11 @@ void GetMatrixSliceDialog::selectLastIndex()
9999

100100
void GetMatrixSliceDialog::startPlay()
101101
{
102-
//std::cout << "play--needs requirements" << std::endl;
103-
state_->setTransientValue(Parameters::PlayMode, 1);
102+
state_->setTransientValue(Parameters::PlayMode, GetMatrixSliceAlgo::PLAY);
104103
Q_EMIT executeActionTriggered();
105104
}
106105

107106
void GetMatrixSliceDialog::stopPlay()
108107
{
109-
std::cout << "pause--needs requirements" << std::endl;
110-
state_->setTransientValue(Parameters::PlayMode, 2);
108+
state_->setTransientValue(Parameters::PlayMode, GetMatrixSliceAlgo::PAUSE);
111109
}

0 commit comments

Comments
 (0)