Documentation/4.3/Developers

From Slicer Wiki
Jump to: navigation, search
Home < Documentation < 4.3 < Developers

For the latest Slicer developers documentation, visit the Nightly page.


New Developers:    Welcome ! Check these instructions !

Getting involved


Start here

New community member checklist

Developer meetings

It is open to everyone, feel free to join.

Developers mailing list / Sign-up / Browse archives

Intended for discussion of programming related questions

FAQ

Set of common development questions/answers

Resources


Roadmap  NEW

What's next ? What's the plan ?

Source code repository

Github or SVN

CDash Quality Dashboard / Setup a dashboard

Nightly, continuous and experimental dashboards.

Bug tracker / Register / Report a problem / Contribute a patch

Web-based bug tracking system - Configuration

Doxygen

Source code API documentation.

Slicer Style Guidelines

Consistency and Readability for a manageable code base

Developer Projects

Pages for the developer projects.

Labs   NEW

Keep track of on-going experiments.

Change logs and release details

Informations about Slicer releases



Build instructions


Create Slicer extensions   UPDATED

Build, test, package and distribute extensions

Build Slicer application

Compiling and installing Slicer from source.

Build Module

Compiling slicer modules outside of the slicer source tree.

Design & Implementation


Modules

Comparison between the different supported module types

Data Model / MRML

Objects and their organization. MRML Library provides API for managing medical image data type

Logics

Details the role of MRML/Slicer/Application/Modules logics and Displayable managers

Layouts

How to control the layout of the views

IO Mechanism

How to read or write nodes from file

Python scripting

Presents the underlying infrastructure.

Charts

Description of the Charting architecture.

Directory Structure

Files location in the build and install tree.

Qt Plugins

How to build and load Qt plugins.

Build system

Details how Slicer is built and packaged.

QtTesting

Testing framework to test Slicer application. It complements unit tests.

How To


Checkout Slicer source   NEW
Setup for Git development   NEW
Commit change sets
Contribute a patch
Integrate topic from external contributor  NEW

Create a CLI module or extension
Create a Loadable module or extension
Create a Scripted module or extension
Create an Editor effect
Bundle module(s) into a Slicer extension   UPDATED
Build module outside of Slicer source tree   NEW

Write a Self Test Module   NEW
Upload test data on Midas   NEW

Document a module
Document an extension

Obtain an API key to submit on the extension server
Contribute an extension description file  NEW
Build an ExtensionsIndex  NEW UnderConstruction.png

Port a CLI to ITKv4  NEW

Setup QtCreator to develop Slicer application or modules
Setup a dashboard

Use debugger with Slicer application
Troubleshoot issues such as crash, or memory leaks
Prevent memory leaks

Write a widget for Slicer and Qt Designer
Use custom widgets in Qt Designer
Load UI file from python


Slicer4Announcement-HiRes.png