Slicer Components
What is a module?
- There are three types (for more information):
- CLI modules
- Are written as an .xml document.
- Used to wrap inputs and outputs to a pre-existing command line program.
- Scripted modules
- Are written in python.
- Can be developed using a downloaded and installed 3D Slicer.
- This is ideal for beginners and quick prototyping.
- Loadable modules
- Are written in C++.
- Have to build your own 3D Slicer in order to develop, for build instructions.
- i.e. compile 3D Slicer source code using CMake and operating specific build tools (Visual Studio, g++, XCode, etc...).
- This is preferred by experienced developers and provides higher functionality.
- CLI modules
What is an extension?
- An extension in 3D Slicer is a collection of one or more modules that typically have some commonality between them.
- The extensions that are available in the 3D Slicer extension manager have been approved by the 3D Slicer team.
What is the SlicerIGT extension?
- The SlicerIGT extension contains many modules that provide functionality for performing various IGT tasks.
- One main purpose is it allows users to interact with different real time data sources (eg. ultrasound stream or tracking data).
- Real time data is currently captured and broadcasted to the PlusServer from the Plus library.
- In 3D Slicer, this data is received through the OpenIGTLinkIF module within the IGT extension (Slicer version 4.8 and earlier) or SlicerOpenIGTLink extension (Slicer version 4.9 and later).