Difference between revisions of "Slicer3:Developers"

From NAMIC Wiki
Jump to: navigation, search
Line 48: Line 48:
 
This section centrally locates many existing (and developing) wiki pages useful to Slicer3 developers. The content is currently being developed for the January AHM.
 
This section centrally locates many existing (and developing) wiki pages useful to Slicer3 developers. The content is currently being developed for the January AHM.
  
* Introduction to Slicer3 (Steve)
+
=== Introduction to Slicer3 ===
 
** [[Media:SlicerHistoricalTimeline.ppt | Slicer3 Historical Timeline]]
 
** [[Media:SlicerHistoricalTimeline.ppt | Slicer3 Historical Timeline]]
 
** [[Slicer3:Status_Summary | Status overview]] and [http://slicerl.bwh.harvard.edu/tmp/slicer3-PreAHMBeta%20Demo/slicer3-PreAHMBeta.htm Demo]
 
** [[Slicer3:Status_Summary | Status overview]] and [http://slicerl.bwh.harvard.edu/tmp/slicer3-PreAHMBeta%20Demo/slicer3-PreAHMBeta.htm Demo]
Line 56: Line 56:
 
** [[media:Slicer 3-beta-2007-01-10.ppt | Overall Architecture]] and [[Slicer3:Style|Slicer 3 Coding Style]]
 
** [[media:Slicer 3-beta-2007-01-10.ppt | Overall Architecture]] and [[Slicer3:Style|Slicer 3 Coding Style]]
 
** [[Slicer3:Contributing_codes_to_Slicer3| Contributing codes to Slicer3]]
 
** [[Slicer3:Contributing_codes_to_Slicer3| Contributing codes to Slicer3]]
* Two module types (Command line and Interactive)
+
 
 +
=== Two module types (Command line and Interactive) ===
 
** [[Slicer3:Execution_Model_Documentation | Command line modules and how to implement one]] (Jim and Bill) [[media:Slicer3-ExecutionModelJune2006.ppt| Intro]]
 
** [[Slicer3:Execution_Model_Documentation | Command line modules and how to implement one]] (Jim and Bill) [[media:Slicer3-ExecutionModelJune2006.ppt| Intro]]
 
**[[Slicer3:Interface_Design#First_steps:_How_to_build_a_Slicer3_Module_GUI | How to add an interactive module]] (wjp)
 
**[[Slicer3:Interface_Design#First_steps:_How_to_build_a_Slicer3_Module_GUI | How to add an interactive module]] (wjp)
* MRML [http://www.na-mic.org/Wiki/images/e/e3/Slicer3_MRML.ppt  MRML Slides](Alex)
+
 
 +
=== MRML [http://www.na-mic.org/Wiki/images/e/e3/Slicer3_MRML.ppt  MRML Slides](Alex) ===
 
** [[Slicer3:Data_Model#Creating_Custom_MRML_Node_Classes | Creating and using new MRML node types]] (Alex)
 
** [[Slicer3:Data_Model#Creating_Custom_MRML_Node_Classes | Creating and using new MRML node types]] (Alex)
 
** [[Slicer3:Data_Model#References_to_MRML_Nodes | Keeping references to MRML nodes ]] (Alex)
 
** [[Slicer3:Data_Model#References_to_MRML_Nodes | Keeping references to MRML nodes ]] (Alex)
 
** [[Slicer3:Data_Model#Undo/Redo_Mechanism  | How undo/redo works, and how to enable it in your code]] (Alex)
 
** [[Slicer3:Data_Model#Undo/Redo_Mechanism  | How undo/redo works, and how to enable it in your code]] (Alex)
* GUI
+
 
 +
=== GUI ===
 
** [[Slicer3:StatelessGUI | Keeping the GUI stateless]] (wjp)
 
** [[Slicer3:StatelessGUI | Keeping the GUI stateless]] (wjp)
 
** [[Slicer3:EventBindings | Adding keyboard shortcuts]] (wjp)
 
** [[Slicer3:EventBindings | Adding keyboard shortcuts]] (wjp)
Line 70: Line 73:
 
** [[Slicer3:Slicer3Brand | 3DSlicer's logo and visual communication guidelines]] (wjp)
 
** [[Slicer3:Slicer3Brand | 3DSlicer's logo and visual communication guidelines]] (wjp)
 
** [[Slicer3:Execution_Model_Documentation#Adding_Module_Logos_to_Slicer3 | Incorporating your group's logo and attributions]] (Jim)
 
** [[Slicer3:Execution_Model_Documentation#Adding_Module_Logos_to_Slicer3 | Incorporating your group's logo and attributions]] (Jim)
* Engineering
+
 
 +
=== Engineering ===
 
** Tips for avoiding memory leaks
 
** Tips for avoiding memory leaks
 
*** Current Practice (Steve)
 
*** Current Practice (Steve)
 
*** [[Slicer3:Memory Management | Suggested change to SmartPointers]] (Jim)
 
*** [[Slicer3:Memory Management | Suggested change to SmartPointers]] (Jim)
 
** Generating tests (Bill)
 
** Generating tests (Bill)
* Integrate Slicer3 into a development environment
+
 
 +
=== Integrate Slicer3 into a development environment ===
 
** [[Slicer3::Eclipse | Eclipse]] (keilhack)
 
** [[Slicer3::Eclipse | Eclipse]] (keilhack)
 
** [[Slicer3::MSVS200X | Microsoft Visual Studio 200x]]
 
** [[Slicer3::MSVS200X | Microsoft Visual Studio 200x]]
* Where to go for help (Steve)
 
* Status Review and Plan (Steve)
 
  
 
== Slicer 3 Projects ==
 
== Slicer 3 Projects ==

Revision as of 17:34, 9 February 2007

Home < Slicer3:Developers
Slicer3

Home

About

FAQ

Status

Downloads

Documentation

Community Support

Developers

Acknowledgements

Links

Slicer 3 Overview

Slicer3LogoHorizontalBeta.png

  • For more details on the slicer architecture see: Architecture Slides.
  • Highlights of the new architecture
Slicer3-Architecture.jpg
Slicer3-Architecture-MRML.jpg
Slicer3-Architecture-Layers.jpg
ExecutionModelPlugins.png

Information for Developers

This section centrally locates many existing (and developing) wiki pages useful to Slicer3 developers. The content is currently being developed for the January AHM.

Introduction to Slicer3

Two module types (Command line and Interactive)

MRML MRML Slides(Alex)

GUI

Engineering

Integrate Slicer3 into a development environment

Slicer 3 Projects

Updated November 2006 to reflect activities in preparation for January 2007 AHM. Projects should correspond to the outstanding issues listed on the Status Summary. Please refer to the Feature Requests from users when planning your implementations.

If your name is in bold, you are responsible for that aspect of the project

Slicer 3 Quick links

The Slicer3 svn repository:

svn co http://www.na-mic.org/svn/Slicer3/trunk Slicer3

Use ViewVC to browse the repository

Instructions for NA-MIC svn

Slicer3 build instructions

Doxygen documentation for Slicer3.

The Slicer3 VisualBlog shows screenshots of slicer developments.

Developers should follow the Slicer 3 Coding Style.

Slicer3 Dashboard

Slicer Bug Tracker

Discussion of slicer3 takes place on the slicer-devel@bwh.harvard.edu list. To join developer's mailing list, send a request to: slicer-devel-request@lists.bwh.harvard.edu with the keyword subscribe as the subject.

Design Information

May 23, 2006: Algorithm Core workshop.


April 3, 2006: Slicer 3 alpha technical powerpoint presentation.


Events

Upcoming

Slicer3.0 Beta

Migration Tutorials (from Slicer 2.x to 3.0) by March 2007

  • First set of Migration tutorials by Jan 1, 2007
  • Second set of Migration tutorials by Feb 1, 2007
  • Complete by March 2007

Past

April 3, 2006

There was a Slicer3 Alpha1 Design Review meeting.

Definition of Alpha Milestone

Slicer3 Alpha2/Beta1 by End of July 2006

  • Initial Testing with Core 3 participation
  • Base functionality in place, but still subject to API changes and other improvements.
  • Packaged versions not yet available, but testers are able to easily build their own versions.

Implementation of Slicer3 Alpha1 by end of March 2006