View Issue Details

IDProjectCategoryView StatusLast Update
0001221Slicer4Core: CLI infrastructurepublic2014-03-06 05:07
Reporterdemian Assigned Tofinetjul  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product Version 
Target VersionSlicer 4.0.0Fixed in VersionSlicer 4.0.0 
Summary0001221: Calling modules from the CLI interface using python
Description

When calling a module from the cli.py interface there is a bug in which when a volume is passed as within a flag, it gets destroyed after being called. I'm attaching a python script to reproduce the bug

A DWI image is needed for running the script. The mask generated by the diffusionweightedmasking module is used once by the diffusiontensorestimation module and then destroyed by it so the seeding module can not make use of the mask

Thanks!
Demian

TagsNo tags attached.

Activities

finetjul

finetjul

2011-07-22 13:49

administrator   ~0002623

Last edited: 2011-07-29 10:52

execfile('e:/tractography_wf_test.py')
e:\work\Slicer\Slicer4\Slicer4-Superbuild-Debug\Slicer-build\Applications\SlicerQT\results\dwi.nhdr
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "e:/tractography_wf_test.py", line 11, in <module>
True
TypeError: loadVolume() takes exactly 1 argument (2 given)

2011-07-23 00:55

 

tractography_wf_test.py (3,028 bytes)

2011-08-15 09:01

 

tractography_wf_test_2.py (3,030 bytes)
demian

demian

2011-08-15 09:01

developer   ~0002710

Last edited: 2011-08-16 06:57

Uploaded a different version of the script. You will need to configure a variable to set up a DWI file.
The bug is explicit when after running the script:
) mask_node.GetImageData() is None
) The Seeding module did not complete successfully (or completed without outputting any data)

finetjul

finetjul

2011-08-17 09:39

administrator   ~0002720

From my analysis, after a CLI is executed the output nodes are loaded with the new data only after a timer (qSlicerCoreApplication) triggers vtkSlicerApplicationLogic::ProcessReadData()

As the python script doesn't ensure the timer times out, the output of the filter have not yet been read that the new filter is executed again (with empty data).

finetjul

finetjul

2011-08-17 20:59

administrator   ~0002730

Fixed in 17745:
http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&amp;revision=17745

jcfr

jcfr

2012-07-27 15:36

administrator   ~0005304

Dear issue reporter,

Good news :) Slicer developers SOLVED the problem you reported - YOU now need to VERIFY and CLOSE this issue.

jcfr

jcfr

2014-03-06 05:05

administrator   ~0010898

Closing resolved issues that have not been updated in more than 3 months

Issue History

Date Modified Username Field Change
2011-06-26 15:49 demian New Issue
2011-06-26 16:11 demian Project Slicer3 => Slicer4
2011-07-22 13:49 finetjul Note Added: 0002623
2011-07-22 13:49 finetjul Status new => feedback
2011-07-23 00:55 demian File Added: tractography_wf_test.py
2011-07-29 10:52 finetjul Note Edited: 0002623
2011-08-15 09:01 demian File Added: tractography_wf_test_2.py
2011-08-15 09:01 demian Note Added: 0002710
2011-08-16 06:57 demian Note Edited: 0002710
2011-08-17 09:39 finetjul Note Added: 0002720
2011-08-17 20:59 finetjul Note Added: 0002730
2011-08-17 20:59 finetjul Status feedback => resolved
2011-08-17 20:59 finetjul Fixed in Version => Slicer 4.0 RSNA
2011-08-17 20:59 finetjul Resolution open => fixed
2011-08-17 20:59 finetjul Assigned To => finetjul
2011-08-25 09:27 finetjul Target Version => Slicer 4.0 RSNA
2012-07-27 15:36 jcfr Note Added: 0005304
2014-03-06 05:05 jcfr Note Added: 0010898
2014-03-06 05:07 jcfr Status resolved => closed