Documentation/4.10/Modules/MatlabModuleGenerator
For the latest Slicer documentation, visit the read-the-docs. |
Introduction and Acknowledgements
This work is part of the SparKit project, funded by An Applied Cancer Research Unit of Cancer Care Ontario with funds provided by the Ministry of Health and Long-Term Care and the Ontario Consortium for Adaptive Interventions in Radiation Oncology (OCAIRO) to provide free, open-source toolset for radiotherapy and related image-guided interventions. | |||||
|
Module Description
The MatlabModuleGenerator module is used for generating a skeleton Matlab module that the user can further customize to implement the intended functionality. The module also allows the user to specify the location of the Matlab executable.
Use Cases
- Specify path to the Matlab executable (Matlab.exe)
- Generate a skeleton module. Each module consists of the following three files:
- Matlab script (ModuleName.m): Matlab function implementation, performs the actual computations
- Command-line interface definition (ModuleName.xml): defines the input and output of the algorithm, Slicer uses this file to generate the graphical user interface of the module
- Module proxy (ModuleName.bat or ModuleName.sh): automatically generated executable file, it is responsible for calling Matlab (by using the MatlabCommander module)
Tutorials
See Matlab Bridge extension page
Panels and their use
- Matlab configuration
- Matlab executable: Path to the Matlab executable (e.g., F:/Program Files/MATLAB/R2013a/bin/matlab.exe)
- Matlab script directory: For information only, the default path for new generated Matlab modules
- Matlab module generation
- Module name: Name of the matlab module, as it should appear in the module list. Module file names are created by removing spaces from the name.
- Generate module: generates module files in the Matlab script directory
- Status box: result of the module generation is shown in this textbox
Information for Developers
The module is responsible for setting the following environment variables (used by the Module Proxy and MatlabCommander):
- SLICER_MATLAB_EXECUTABLE_PATH: path to Matlab.exe
- SLICER_MATLAB_COMMANDER_PATH: path to MatlabCommander.exe (determines automatically by using relative paths)
- SLICER_MATLAB_COMMAND_SERVER_SCRIPT_PATH: path to commandserver.m (determines automatically by using relative paths)
The module stores the following information in settings file:
- Slicer.ini: [Matlab]/MatlabExecutablePath
- Slicer-NNN.ini: [Modules]/AdditionalPaths (adds the Matlab script directory so that the generated modules are found by Slicer)