Difference between revisions of "AHM2009:Plug-ins"

From NAMIC Wiki
Jump to: navigation, search
(New page: Back to AHM 2009 Agenda This is where information about this session goes.)
 
 
(3 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 is where information about this session goes.
+
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 ==
 +
 
 +
* 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
 +
* Daemon
 +
** slicerget, slicerput

Latest revision as of 18:30, 8 January 2009

Home < AHM2009:Plug-ins

Back to AHM 2009 Agenda

There 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
  • Daemon
    • slicerget, slicerput