Difference between revisions of "AHM2009:Plug-ins"
From NAMIC Wiki
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
[[AHM_2009#Agenda|Back to AHM 2009 Agenda]] | [[AHM_2009#Agenda|Back to AHM 2009 Agenda]] | ||
− | This | + | There are several ways to integrate technology into Slicer3. This presentation discussions how the mechanisms compare and when to use each integration path. See [[Media:Integrating with Slicer3.ppt | PPT]] or [[Media:Integrating with Slicer3.pdf | PDF]]. |
== Slicer module types == | == Slicer module types == | ||
* Built in modules | * Built in modules | ||
− | + | ** ''Slicer Base'' functionality | |
− | + | ** Access to full internals of Slicer | |
− | ** | ||
− | ** | ||
* Loadable modules | * Loadable modules | ||
+ | ** Optional modules distributed with Slicer | ||
+ | ** Third party modules | ||
+ | ** Access to full internals of Slicer | ||
* Scripted modules | * Scripted modules | ||
+ | ** Written in Tcl or Python | ||
+ | ** Access to a subset of Slicer API (wrapped methods) | ||
+ | * Command line modules | ||
+ | ** Simplest way to add functionality to Slicer | ||
+ | ** XML specification of plugin parameters | ||
+ | ** GUI, Logic, Node automatically constructed | ||
+ | ** Limited access to Slicer data | ||
+ | ** Types | ||
+ | *** Executable modules | ||
+ | **** Can be run inside Slicer or in batch | ||
+ | *** Shared objects modules | ||
+ | **** Same source code style as Executable modules but with direct access to some data in MRML tree | ||
+ | *** Python modules | ||
+ | **** Similar coding style as shared object modules but in Python | ||
+ | * Daemon | ||
+ | ** slicerget, slicerput |
Latest revision as of 18:30, 8 January 2009
Home < AHM2009:Plug-insThere are several ways to integrate technology into Slicer3. This presentation discussions how the mechanisms compare and when to use each integration path. See PPT or PDF.
Slicer module types
- Built in modules
- Slicer Base functionality
- Access to full internals of Slicer
- Loadable modules
- Optional modules distributed with Slicer
- Third party modules
- Access to full internals of Slicer
- Scripted modules
- Written in Tcl or Python
- Access to a subset of Slicer API (wrapped methods)
- Command line modules
- Simplest way to add functionality to Slicer
- XML specification of plugin parameters
- GUI, Logic, Node automatically constructed
- Limited access to Slicer data
- Types
- Executable modules
- Can be run inside Slicer or in batch
- Shared objects modules
- Same source code style as Executable modules but with direct access to some data in MRML tree
- Python modules
- Similar coding style as shared object modules but in Python
- Executable modules
- Daemon
- slicerget, slicerput