Difference between revisions of "Slicer3:Developers"
| Line 177: | Line 177: | ||
|- | |- | ||
||[[Slicer3:EM|EMSegment Interface]] | ||[[Slicer3:EM|EMSegment Interface]] | ||
| − | ||''' | + | ||'''Kilian Pohl''' |
|- | |- | ||
||[[Slicer3:Slicer_Daemon|SlicerDaemon Interface (for unu, matlab)]] | ||[[Slicer3:Slicer_Daemon|SlicerDaemon Interface (for unu, matlab)]] | ||
| Line 183: | Line 183: | ||
|- | |- | ||
||[[Slicer3:Build/Test/Deploy|Build/Test/Deploy System]] | ||[[Slicer3:Build/Test/Deploy|Build/Test/Deploy System]] | ||
| − | || | + | ||Katie Hayes |
|- | |- | ||
||[[Slicer3:Batchmake_Integration|Batchmake/GRID Integration]] | ||[[Slicer3:Batchmake_Integration|Batchmake/GRID Integration]] | ||
| Line 189: | Line 189: | ||
|- | |- | ||
||[[Slicer3:Registration|Registration Modules]] | ||[[Slicer3:Registration|Registration Modules]] | ||
| − | || | + | ||Domink Meier |
|- | |- | ||
||[http://www.na-mic.org/Wiki/index.php/ITK_Registration_Optimization Improvements to the registration framework] | ||[http://www.na-mic.org/Wiki/index.php/ITK_Registration_Optimization Improvements to the registration framework] | ||
| Line 198: | Line 198: | ||
|- | |- | ||
||[[Slicer3:Grid_Interface|Grid Integration]] | ||[[Slicer3:Grid_Interface|Grid Integration]] | ||
| − | ||'''Jeff Grethe''', | + | ||'''Jeff Grethe''', Marco Ruiz |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
||[[Slicer3:Volume Rendering |Volume Rendering]] | ||[[Slicer3:Volume Rendering |Volume Rendering]] | ||
| − | ||'''Yanling | + | ||'''Yanling Liu''' |
|- | |- | ||
||[[Slicer3:GPURayCaster | Volume Rendering using the VTK GPU acclerated Ray Caster]] | ||[[Slicer3:GPURayCaster | Volume Rendering using the VTK GPU acclerated Ray Caster]] | ||
| Line 256: | Line 249: | ||
||[[Slicer3:Pipeline_Integration|Loni Pipeline Integration]] | ||[[Slicer3:Pipeline_Integration|Loni Pipeline Integration]] | ||
||'''Jags''' | ||'''Jags''' | ||
| + | |- | ||
| + | ||[[Slicer3:Performance_Analysis|Slicer3:Performance Analysis]] | ||
| + | ||'''Katie Hayes''' | ||
| + | |- | ||
| + | ||[[Slicer3:ThreadingToolKit|Threading ToolKit]] | ||
| + | ||'''Dan Blezek, James Miller, Stephen Aylward''' | ||
| + | |- | ||
|} | |} | ||
Revision as of 03:40, 21 January 2010
Home < Slicer3:DevelopersSlicer 3 Developer Page
This page contains links to Slicer3 developer resources and events.
Click here for Slicer3 Events
Slicer 3 Architecture Overview
For more details on the slicer architecture see: Architecture Slides (updated April, 2007).
- Highlights of the new architecture
Quick Links for Developers
This section centrally locates many existing (and developing) wiki pages useful to Slicer3 developers.
Slicer 3 Quick links to the Source code
The Slicer3 svn repository:
svn co http://svn.slicer.org/Slicer3/trunk Slicer3
| General Slicer3 Quick Links | Debugging Slicer3 Quick Links |
| Instructions for NA-MIC svn | Slicer3 Dashboard (After May 2, 2008) |
| Use ViewVC to browse the repository | Slicer3 Dashboard (Before May 2, 2008) |
| Slicer3 build instructions | Slicer Bug Tracker |
| Doxygen documentation for Slicer3. | |
| The Slicer3 VisualBlog shows screenshots of slicer developments. | |
| Developers should follow the Slicer 3 Coding Style. |
Developers' Mailing List
Discussion of Slicer3 takes place on the slicer-devel at massmail.spl.harvard.edu list. To join developer's mailing list, send a request to: slicer-devel-request at massmail.spl.harvard.edu with the keyword subscribe as the subject. Or access the slicer-devel archives and web administration interface.
| Introduction to Slicer3 | Key People |
| Getting the software and troubleshooting | |
| Overall Architecture and Slicer 3 Coding Style | |
| Contributing codes to Slicer3 | |
| Two module types (Command line and Interactive) | Key People |
| Command line modules and how to implement one | Jim and Bill Intro |
| MRML Medical Reality Modeling Language (MRML) is a language implemented as a type of XML document, with new tags defined to handle medical image data types such as volumes, models or coordinate transforms. MRML Slides |
Key People |
| Creating and using new MRML node types | Alex |
| Keeping references to MRML nodes | Alex |
| How undo/redo works, and how to enable it in your code | Alex |
| GUI | Key People |
| Adding keyboard shortcuts | Wendy |
| GUI style guidelines (undergoing change for move to Qt) | Wendy |
| User-centered design practice | Wendy |
| 3DSlicer's logo and visual communication guidelines | Wendy |
| Incorporating your group's logo and attributions | Jim |
| Some experiments/advanced techniques for developing slicer3 interfaces | Steve |
| Engineering | Key People |
| Tips for avoiding memory leaks: Current Practice | Steve |
| Tips for avoiding memory leaks: Suggested change to SmartPointers | Jim |
| Generating tests | Bill |
| Setting up Testing | |
| Build Information | |
| The Launcher | |
| Documenting your module As soon as the wiki page template is finalized, and the infrastructure is added to link to this wiki page from the "Help & Acknowledgment" panel in your module's GUI, we will ask developers to fill out a brief document describing your module and its use. See here for more information. |
Key People |
| Documenting a module with wink | |
| Integrate Slicer3 into a development environment | Key People |
| Eclipse | Michael Keilhack |
| Microsoft Visual Studio 200x |
Quick Links to Slicer3 Projects
Projects should correspond to the outstanding issues listed on the Status Summary. Please refer to the Feature Requests from users when planning your implementations.
| Slicer3 Projects | Key People Bold names are responsible for an aspect of the project. | ||
| Architecture/Features | Steve Pieper, Group: Bill Lorensen, Ron Kikinis, Mike Halle, Noby Hata | ||
| Data Model / libMRML | Alex, Steve | ||
| Execution Model / Command Line Modules | Jim Miller, Bill Lorensen | ||
| Interface Design and Usability | Wendy Plesniak, KWWidgets: Sebastien Barre, Yumin Yuan | ||
| DTMRI | Alex with help from Diffusion Images: Raul, Tractography: Lauren LMI | ||
| Editor | Steve | ||
| Colors, Fiducials, FreeSurfer, ModelMaker | Nicole | ||
| IGT, Trackers | Haiying | ||
| EMSegment Interface | Kilian Pohl | ||
| SlicerDaemon Interface (for unu, matlab) | Steve Pieper | ||
| Build/Test/Deploy System | Katie Hayes | ||
| Batchmake/GRID Integration | Julien Jomier | ||
| Registration Modules | Domink Meier | ||
| Improvements to the registration framework | Casey Goodlett, Stephen Aylward | ||
| Python Integration | Dan Blezek | ||
| Grid Integration | Jeff Grethe, Marco Ruiz | Volume Rendering | Yanling Liu |
| Volume Rendering using the VTK GPU acclerated Ray Caster | Lisa Avila / Sebastien Barre | ||
| XNAT Interface | Steve, Wendy, Dan Marcus, Tim Olsen | ||
| Web Presence | Nicole Aucoin, Zack Galbreath | ||
| Loadable Modules | Alex Yarmarkovich, Steve Pieper | ||
| Extensions | Steve Pieper | ||
| TimeSeries and Multi-Volume Data | Junichi Tokuda, Steve Pieper, Daniel Blezek, Dominik Meier, Wendy Plesniak | ||
| Remote Data Handling | Steve Pieper, Nicole Aucoin, Wendy Plesniak | ||
| Query Atlas | Wendy Plesniak | ||
| Radiological review | Jim Miller | ||
| Inactive Projects | This is list of experimental projects which are not active at this time | ||
| Transition of Selected Slicer2.x Modules to Slicer3 | Nicole, Katie, Wendy, Mathieu | ||
| Diffusion Editor | Kerstin | ||
| MistSlicer | Yuichiro Hayashi, Kensaku Mori, Nobuhiko Hata | ||
| LDDMM Interface | Steve, Anthony Kolasny | ||
| Volume Rendering With CUDA (NOT Active) | Ben | ||
| Loni Pipeline Integration | Jags | ||
| Slicer3:Performance Analysis | Katie Hayes | ||
| Threading ToolKit | Dan Blezek, James Miller, Stephen Aylward |
Design Information
- May 23, 2006: Algorithm Core workshop.
- April 3, 2006: Slicer 3 alpha technical powerpoint presentation.
- Discussion page about using Slicer3:Qt.
Resources
Several books are available on the core topics related to slicer programming:
