2006 September Slicer3 Update

From NAMIC Wiki
Jump to: navigation, search
Home < 2006 September Slicer3 Update

Notes from Meeting


2006 September Slicer 3 Meeting Notes


Dates: Tuesday, 9/19 - noon to Wednesday 9/20 4pm.

Location: SPL @1249 Bolyston St, Boston MA

Note: There is a Red Sox home game at Fenway Park on Tuesday the 19th. The parking lot behind the building will be available during the day but cars must be moved by about 5:30 or they will be charged $30 (plus they will be parked in until after the game). An option might be to park at your hotel and take a cab to the office.


  • Mini Programming/Update Event for NA-MIC Slicer 3 Developers
  • Make specific plans for implementation of outstanding tasks
    • Beta by November to Core 1 and 3
    • Results and wider release by January AHM


There will be a combination of general meetings and work sessions (for debugging, planning, demos, etc). People who are not planning to do programming do not need to attend the 'work sessions' times in the following agenda.


  • Noon to 1:00: pizza will be provided
  • 1-1:30 Status Overview (quick report on recent activities items from all participants).
  • 1:30 - 3:30 Review of what we plan to accomplish by November, and by January. Sign up for deliverables. Define tasks for work sessions. Identify any interactions that need to take place while people are together.(all)
    • Goal of this session will be to work on the Slicer3:Status_Summary and the [#Some_discussion_topics Discussion Topics].
      • Discuss who will do the tasks and how they will be done
      • Add any missing tasks
      • If needed defer some tasks for a future release
      • Discuss any roadblocks
  • 3:30-4:00 Coffee and snacks will be provided.
  • 4:00-5:00 Break out into work sessions


  • 8:00 Coffee, breakfast, work sessions
  • 9:00-10:00 Review of Discussion Topics ([#Some_discussion_topics below])
  • 10:00-2:30 Work sessions. Take-out lunch will be ordered.
  • 10:30 (more coffee!)
  • 2:30 Update on work sessions (all)
    • finalize tasks and projects for November and January.
    • confirm that all needed face to face interactions occurred
    • plan any follow up phone calls or sessions


  • Steve (in charge of the schedule)
  • Bill
  • Jim
  • Tina
  • Ron
  • Nicole
  • Katie
  • Wendy
  • Alex
  • Raul
  • Will
  • Andy
  • Yumin
  • Noby Hata--User:Hata 13:26, 12 September 2006 (EDT)
  • Haiying
  • Kilian


  • Some end users have started playing with Slicer3 and providing feedback
  • We need to deliver a beta to NA-MIC Core 3 users in November, and have a platform for development and use at the January AHM

Some discussion topics

Organized roughly by topic. These should form the basis for worksessions and tasks. Participants should feel free to add topics.


  • Profiling and debugging tools for event processing (how to minimize extraneous callbacks and help developers follow the control flow under the event/observer model). Also profiling/debugging tools for managing reference counts to avoid leaks.
  • Observer Suggestion to avoid the problem of ModifiedEvent being invoked by Set methods in destructors:
    • Add a RemoveAllObservers option to vtkObject/vtkSubjectHelper
    • Call RemoveAllObservers after invoking the DeleteEvent in vtkObject::UnRegisterInternal
    • Rationale: the Observer is really 'owned' by the object that is being observed so once that goes away, the Observers don't make sense any more.
    • More discussion of this here along with code snippets of some prototype debugging modifications to vtk.
  • Event handling and Widgets (how functionality in Slicer3 SWidget tcl code maps onto/migrates to WWidgets)
  • More optimizations for vtkImageReslice?
  • Adding Volume Rendering to Slicer3
  • High Resolution rendering (off screen rendering vs mosiac: slicer2 does mosaic, off screen could be done if Mesa is compiled into VTK. Having Mesa might be useful for other purposes).


  • Extending Archetype file reading to handle color, vector, tensor data sets
    • Single "Add Volume" menu for users that autodetects the type
    • mapping this onto ITK readers without breaking the compilers
  • Faster DICOM loading (apparently there are a lot of seeks in the inner loop of itk/gdcm loading)
  • Registration in Slicer3
    • Reuse the Slicer2 classes?
    • Make command line executables for registration


  • Multi-column list box widget
    • behavior on linux (must click to edit, un/checking an embedded checkbox doesn't set that cell to Selected)
    • rapid refresh causes flashes (e.g. in vtkMatrix4x4 - perhaps more selective update needed).
  • Other api issues
    • (vtkKWFrame within vtkKWFrameWithLabel?)

Command Line Modules

  • Do we have command line modules from Core 1? Do we have specific requests from Core 3?
  • Non linear registration
  • Applying modules in separate thread (avoid locking up the GUI during processing)
  • Handle input/output of Models in CLI Modules
  • Handle input/output of Fiducials in CLI Modules


  • CPack integration update
  • Speed of start-up
  • Build/dependency issues in cmake (sometimes need two 'makes' to make)

Application Functionality

  • Functionality
    • Porting DTMRI Module
    • Drawing in the Editor
    • Implementing IGT modules (w. open tracker)--User:Hata 13:25, 12 September 2006 (EDT)