Difference between revisions of "Documentation/4.0/Developers"
From Slicer Wiki
(Prepend documentation/versioncheck template. See http://na-mic.org/Mantis/view.php?id=2887) |
|||
(37 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
+ | <noinclude>{{documentation/versioncheck}}</noinclude> | ||
__NOTOC__ | __NOTOC__ | ||
− | |||
== Developers Information == | == Developers Information == | ||
+ | {| | ||
+ | | | ||
+ | |||
+ | {{note}} Slicer4 developer documentation is under development with the idea that tutorials and related information will be available to support work at the [http://na-mic.org NA-MIC] [http://www.na-mic.org/Wiki/index.php/2012_Winter_Project_Week 2012 Project Week]. | ||
+ | |||
=Requirements for Modules= | =Requirements for Modules= | ||
* The module is '''feature complete''', i.e. it does everything that it advertises | * The module is '''feature complete''', i.e. it does everything that it advertises | ||
* The module has a '''test'''. See [http://wiki.na-mic.org/Wiki/index.php/Slicer3:Execution_Model_Testing '''here'''] for more information. | * The module has a '''test'''. See [http://wiki.na-mic.org/Wiki/index.php/Slicer3:Execution_Model_Testing '''here'''] for more information. | ||
* The module is fully documented. [[Documentation/{{documentation/version}}/Modules/YOURMODULENAME|Template]] and [[Documentation/{{documentation/version}}/HowTo|How-to]] for the end user documentation. | * The module is fully documented. [[Documentation/{{documentation/version}}/Modules/YOURMODULENAME|Template]] and [[Documentation/{{documentation/version}}/HowTo|How-to]] for the end user documentation. | ||
− | * The module complies with [[Documentation-Rons-Rules-For-Tools|Rons rules for tool]] and the style | + | * The module complies with [[Documentation-Rons-Rules-For-Tools|Rons rules for tool]] and the [[Documentation/{{documentation/version}}/Developers/Style Guide|style guidelines]], including [[Slicer3:Human_Interface_and_Style_Guide_for_Developers#Colors:_application_palettes|color palette]]. |
*Use the logos in the [[Template:Collaborator|List of Collaborators]] | *Use the logos in the [[Template:Collaborator|List of Collaborators]] | ||
+ | | | ||
+ | [[{{collaborator|logo|slicer4}}|x300px|right]] | ||
+ | |} | ||
{| border="0" align="center" width="98%" valign="top" cellspacing="7" cellpadding="2" | {| border="0" align="center" width="98%" valign="top" cellspacing="7" cellpadding="2" | ||
Line 24: | Line 32: | ||
* [[Documentation/{{documentation/version}}/Developers/Overview | Overview]] | * [[Documentation/{{documentation/version}}/Developers/Overview | Overview]] | ||
: Overview of the development process. | : Overview of the development process. | ||
+ | |||
+ | ===Mailing List=== | ||
+ | ---- | ||
+ | * [http://massmail.bwh.harvard.edu/mailman/listinfo/slicer-devel Developers mailing list] | ||
+ | : Intended for the discussion of programming related questions. | ||
+ | * [http://slicer-devel.65872.n3.nabble.com/ Developers mailing list archives] | ||
+ | : Search for priorly posted questions and answers on nabble.com | ||
+ | |||
+ | ===Miscellaneous=== | ||
+ | ---- | ||
+ | * [[Documentation/4.0/Developers/ImageGallery|Image gallery]] | ||
+ | : Set of screenshots showing the different Slicer components. | ||
+ | |||
+ | * [[Documentation/{{documentation/version}}/Developers/Style Guide|Slicer Style Guidelines]] | ||
+ | : Consistency and Readability for a manageable code base | ||
+ | |||
+ | * [[Documentation/{{documentation/version}}/Developers/Sandbox|MediaWiki Extensions testing page]] | ||
+ | : This page serves as a MediaWiki sandbox. | ||
+ | |||
+ | * [[Slicer4:Developers|Developer Projects]] | ||
+ | : Pages for the developer projects. | ||
+ | |||
+ | |||
+ | <!-- | ||
+ | * [[Documents and links]] | ||
+ | : A set of presentations made on Slicer and document talking about it. | ||
+ | |||
+ | * [[Documentation/4.0/FAQ]] | ||
+ | : A set of common questions/answer on Slicer goal and possibility. | ||
+ | --> | ||
+ | |||
+ | |bgcolor="#CCCCCC"| | ||
+ | |valign="top"| | ||
+ | |||
+ | ===Source Code=== | ||
+ | ---- | ||
+ | * [http://svn.slicer.org/Slicer4/trunk SVN repository] | ||
+ | : <code>svn checkout http://svn.slicer.org/Slicer4/trunk</code> | ||
+ | |||
+ | * [http://slicer.org/doc/html/classes.html Doxygen] | ||
+ | : Source code API documentation. | ||
+ | |||
+ | * [http://viewvc.slicer.org/viewvc.cgi/Slicer4/trunk ViewVC] ([http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision last commit]) | ||
+ | : Web-based code repository viewer. | ||
===Compile/Install=== | ===Compile/Install=== | ||
---- | ---- | ||
− | |||
− | |||
* [[Documentation/{{documentation/version}}/Developers/Build Instructions|Building instructions]] | * [[Documentation/{{documentation/version}}/Developers/Build Instructions|Building instructions]] | ||
: Compiling and installing Slicer from source. | : Compiling and installing Slicer from source. | ||
− | + | * [http://slicer.cdash.org/index.php?project=Slicer4 CDash (Quality Dashboard)] | |
− | + | : Nightly, continuous and experimental dashboards. | |
− | * [http:// | ||
− | : | ||
+ | * [[Release Details|Releases]] | ||
+ | : Informations of Slicer releases | ||
===Design & Implementation=== | ===Design & Implementation=== | ||
---- | ---- | ||
− | * [[ | + | |
+ | * [[Documentation/{{documentation/version}}/Developers/Modules | Modules]] | ||
+ | : Comparison between the different module types supported by Slicer | ||
+ | |||
+ | * [[Documentation/{{documentation/version}}/Developers/MRML | Data Model - MRML]] | ||
: Objects and their organization. MRML Library provides API for managing medical image data type. | : Objects and their organization. MRML Library provides API for managing medical image data type. | ||
− | * [[Documentation/{{documentation/version}}/Developers/ | + | * [[Documentation/{{documentation/version}}/Developers/Logics | Logics]] |
− | : Details | + | : Details the role of logics in Slicer and lists the different types such as [[Documentation/{{documentation/version}}/Developers/DisplayableManagers | displayable managers]]. |
* [[Documentation/{{documentation/version}}/Developers/Python scripting | Python scripting]] | * [[Documentation/{{documentation/version}}/Developers/Python scripting | Python scripting]] | ||
Line 51: | Line 105: | ||
* [[Documentation/{{documentation/version}}/Developers/Build system | Build system]] | * [[Documentation/{{documentation/version}}/Developers/Build system | Build system]] | ||
: Details how Slicer is built and packaged. | : Details how Slicer is built and packaged. | ||
+ | |||
|bgcolor="#CCCCCC"| | |bgcolor="#CCCCCC"| | ||
|valign="top"| | |valign="top"| | ||
+ | |||
===HOW TO=== | ===HOW TO=== | ||
---- | ---- | ||
Line 59: | Line 115: | ||
* [[Documentation/{{documentation/version}}/Developers/Tutorials/ModuleWriting|Create a loadable module]] | * [[Documentation/{{documentation/version}}/Developers/Tutorials/ModuleWriting|Create a loadable module]] | ||
− | : | + | : Step by step tutorial to write C++ module |
* [[Documentation/{{documentation/version}}/Developers/Tutorials/ExternalModuleWriting|Create an external loadable module]] | * [[Documentation/{{documentation/version}}/Developers/Tutorials/ExternalModuleWriting|Create an external loadable module]] | ||
Line 69: | Line 125: | ||
* [[Documentation/{{documentation/version}}/Developers/Tutorials/Debug Instructions|Debug]] | * [[Documentation/{{documentation/version}}/Developers/Tutorials/Debug Instructions|Debug]] | ||
: How to debug Slicer. | : How to debug Slicer. | ||
+ | |||
+ | * [[Documentation/{{documentation/version}}/Developers/Tutorials/Troubleshooting|Troubleshooting Slicer]] | ||
+ | : Hints for narrowing down run time issues. | ||
* [[Documentation/{{documentation/version}}/Developers/Tutorials/WidgetWriting|Write a Widget for Slicer and Qt Designer]] | * [[Documentation/{{documentation/version}}/Developers/Tutorials/WidgetWriting|Write a Widget for Slicer and Qt Designer]] | ||
Line 79: | Line 138: | ||
* [[Documentation/{{documentation/version}}/Developers/Tutorials/DashboardSetup|Setup a dashboard]] | * [[Documentation/{{documentation/version}}/Developers/Tutorials/DashboardSetup|Setup a dashboard]] | ||
− | + | * [[Documentation/{{documentation/version}}/Developers/Tutorials/MemoryManagement|Avoid memory leaks]] | |
− | |||
− | |||
− | |||
− | |||
− | * [[Documentation/ | ||
− | |||
− | * [ | + | * [http://www.na-mic.org/Wiki/index.php/Projects:MATLABSlicerExampleModule Pass data between Slicer and Matlab] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} |
Latest revision as of 07:36, 14 June 2013
Home < Documentation < 4.0 < Developers
For the latest Slicer documentation, visit the read-the-docs. |
Developers Information
Slicer4 developer documentation is under development with the idea that tutorials and related information will be available to support work at the NA-MIC 2012 Project Week. Requirements for Modules
|
Introduction
Mailing List
Miscellaneous
|
Source Code
Compile/Install
Design & Implementation
|
HOW TO
|