TubeTK/Events/2011.07.05: Difference between revisions

From KitwarePublic
< TubeTK‎ | Events
Jump to navigationJump to search
No edit summary
No edit summary
Line 1: Line 1:
Not finished yet.
Not finished yet.
Danielle & Ilknur:
Danielle & Ilknur:
== Adding TubeTK CLIs to Slicer ==


Instructions for adding TubeTK CLIs to Slicer can be found in:
Instructions for adding TubeTK CLIs to Slicer can be found in:
http://www.cmake.org/Wiki/TubeTK/Slicer
http://www.cmake.org/Wiki/TubeTK/Slicer
Basically, these steps should be followed for tubetk:
Basically, these steps should be followed for tubetk:
#  From tubetk, point code to Slicer CLI Repository for build and superbuild
#  From tubetk, point code to Slicer CLI Repository for build and superbuild. (findpackage(Slicer))
#  From Slicer, add paths for CLI or python (this can be done from the Slicer GUI)
#  From Slicer, add paths for CLI or python (this can be done from the Slicer GUI)
##  From JC's info today - CMakeLists to look at for Qt scripted modules (python): ~/Slicer4Trunk/Slicer4/Extensions/Testing/ExtensionTemplate/CMakeLists.txt
##  From JC's info today - CMakeLists to look at for Qt scripted modules (python): ~/Slicer4Trunk/Slicer4/Extensions/Testing/ExtensionTemplate/CMakeLists.txt


 
Note:
1) Yes, you should be able to pass fiberbundles as CLI parameters, using the XML tag:
# You should be able to pass fiberbundles as CLI parameters, using the XML tag:
  <geometry [type="fiberbundle"]>
  <geometry [type="fiberbundle"]>
For example, see the "Labelmap Seeding" module - it has an output parameter "Output fiber bundle"
For example, see the "Labelmap Seeding" module - it has an output parameter "Output fiber bundle"


 
# Instructions to copy CLI's to Slicer directory:
 
Note instructions to copy CLI's to Slicer directory:
cp <YourTubeTKBuildDirectory>/TubeTK-Build/lib/TubeTK/Plugins/*tube*  
cp <YourTubeTKBuildDirectory>/TubeTK-Build/lib/TubeTK/Plugins/*tube*  
     <YourSlicerDirectory>/lib/Slicer3/Plugins
     <YourSlicerDirectory>/lib/Slicer3/Plugins


We should want to specify <YourTubeTKBuildDirectory>/TubeTK-Build/lib/TubeTK/Plugins as the external module directory in Slicer's settings
We should specify <YourTubeTKBuildDirectory>/TubeTK-Build/lib/TubeTK/Plugins as the external module directory in Slicer's settings
BUT
BUT this will cause a crash in Slicer because it tries to read the non-plugin executables as well:
this will cause a crash in Slicer because it tries to read the non-plugin executables as well:


> 4218 [] TRACE org.slicer.base.qtcore.qSlicerCoreIOManager  -
> 4218 [] TRACE org.slicer.base.qtcore.qSlicerCoreIOManager  -
Line 41: Line 41:
Additional small TODOs:
Additional small TODOs:
- hide external ITK/VTK/CTK directories as advanced CMake parameters, or hide them completely so that they can only be specified on the command line
- hide external ITK/VTK/CTK directories as advanced CMake parameters, or hide them completely so that they can only be specified on the command line
== Create Mantis for TubeTK ==
# Creation of  TubeTK project in Kitware's bug tracker:
## This is done. It is in http://public.kitware.com/Bug/my_view_page.php
# Setup the check-in hook for linking with the bug tracker

Revision as of 14:25, 6 July 2011

Not finished yet. Danielle & Ilknur:


Adding TubeTK CLIs to Slicer

Instructions for adding TubeTK CLIs to Slicer can be found in: http://www.cmake.org/Wiki/TubeTK/Slicer Basically, these steps should be followed for tubetk:

  1. From tubetk, point code to Slicer CLI Repository for build and superbuild. (findpackage(Slicer))
  2. From Slicer, add paths for CLI or python (this can be done from the Slicer GUI)
    1. From JC's info today - CMakeLists to look at for Qt scripted modules (python): ~/Slicer4Trunk/Slicer4/Extensions/Testing/ExtensionTemplate/CMakeLists.txt

Note:

  1. You should be able to pass fiberbundles as CLI parameters, using the XML tag:
<geometry [type="fiberbundle"]>

For example, see the "Labelmap Seeding" module - it has an output parameter "Output fiber bundle"

  1. Instructions to copy CLI's to Slicer directory:

cp <YourTubeTKBuildDirectory>/TubeTK-Build/lib/TubeTK/Plugins/*tube*

    <YourSlicerDirectory>/lib/Slicer3/Plugins

We should specify <YourTubeTKBuildDirectory>/TubeTK-Build/lib/TubeTK/Plugins as the external module directory in Slicer's settings BUT this will cause a crash in Slicer because it tries to read the non-plugin executables as well:

> 4218 [] TRACE org.slicer.base.qtcore.qSlicerCoreIOManager - > registerIO qSlicerVolumesIO > 4478 [] TRACE org.slicer.base.qtcore.qSlicerCoreIOManager - > registerIO qSlicerFiberBundleIO > ASSERT: "!_moduleTitle.isEmpty()" in file > /home/andrey/Slicer/Slicer4/Base/QTCore/qSlicerModuleManager.cxx, line > 141 > Aborted > > Launch /usr/local/andrey/Slicer4-Qt-debug/Slicer-build/bin/SlicerQT-real > returned with error: child process exited abnormally >

In particular, this is because of TextCompareCommand and ImageCompareCommand, which should be changed to build somewhere else.

Additional small TODOs: - hide external ITK/VTK/CTK directories as advanced CMake parameters, or hide them completely so that they can only be specified on the command line


Create Mantis for TubeTK

  1. Creation of TubeTK project in Kitware's bug tracker:
    1. This is done. It is in http://public.kitware.com/Bug/my_view_page.php
  2. Setup the check-in hook for linking with the bug tracker