Developer Meetings/20131126

From Slicer Wiki
Jump to: navigation, search
Home < Developer Meetings < 20131126

To discuss

  • SimpleITK v0.7.1
    • a couple bug fixes
  • Refactoring of RemoteIO. See below
  • Extension and dependency on ITKDeprecated and ITKV3Compatibility library

News & Update

  • Support for Slicer_USE_SYSTEM_* options

In progress


Usage of RemoteIO in Slicer


(1) Jc - Nov 26, 2013

I notice that the only reason we depend on curl is for existence 
of RemoteIO library that has been "replaced" by SampleData 
and DataStore.

I really like the concept of registering URI that could be
downloaded that is why we should keep the infrastructure in place.

That said, I was thinking to get remove the following classes:

vtkHIDHandler.h
vtkHIDTagTable.h
vtkSRBHandler.h
vtkXNATHandler.h
vtkXNDHandler.h
vtkXNDTagTable.h

Then, we could implement a Qt based  vtkHTTPHandler handler, that 
way we could simply remove the curl dependency.

In the mean time, I would also remove the FetchMI logic which is 
not maintained or used at that point.

Let me know what you think,

// --------------------
(2) Andras - Nov 26, 2013

It’s always a good idea to make the core smaller and simpler, so 
I support the idea of getting rid of unused classes and unnecessary 
dependencies.

We planned to use curl for uploading training results in a .zip 
file to Moodle, but I guess we can add curl to our module then.

// --------------------
(3) Jc - Nov 26, 2013

Thanks for commenting.

If your module is a loadable or a scripted module, all "curl" 
functionality can be provided by Qt. Would that work for you ?

// --------------------
(4) Andras - Nov 26, 2013

We would need quite complex curl functionalities for uploading data, 
see the scripts below:

https://gist.github.com/Joshkunz/4516316

https://github.com/proyectoeduhub/moodle-cli/blob/master/moodle-file-upload-curl.sh

Would it be feasible to implement these?

// --------------------
(5) Jc - Nov 26, 2013

Good point. The plan would then be to:

  (1) remove dependency of Slicer core against curl

  (2) Only, build both the Curl library and the curl executable, keeping
 them in the package.

That way, it would provide great flexibility with minimum overhead.

// --------------------
(6) Steve - Nov 26, 2013

Sounds like an excellent plan.

Yes, I like the design of the remote IO support in MRML, but it's not
 being used and is great to simplify wherever possible.  FetchMI can 
go away for now, with the hope that we'll reproduce and improve on 
it in the future (someday).

Conclusion

  • Bump:
    • ITK tag to 4.5rc01
    • SimpleITK to release branch a2b29110771a
  • Steve: Slicer AHM Tutorial related to wrapping of custom class using SimpleITK ?
    • Brad: The underlying infrastructure is not yet ready to support this. We should provide some requirement / use case.