Slicer includes several different types of files, stored in different locations.
The Slicer core Tcl source files are in 3 subdirectories of the slicer2/Base/tcl
directory, depending upon their use.
Tcl Source Files |
---|
slicer2/Base/tcl/tcl-main
These are the files Slicer must have to run.
|
slicer2/Base/tcl/tcl-modules
These files are optional, and each one implements a specific function
in Slicer. These Tcl files are called modules.
|
slicer2/Base/tcl/tcl-shared
These files implement functionality that multiple modules may share.
For example, generally helpful procedures or new widgets are here.
|
VTK classes that are part of the core of Slicer are in the slicer2/Base/cxx
directory.
C++ Source Files |
---|
slicer2/Base/cxx
These are the classes that Slicer adds to VTK.
The VTK classes are compiled outside the source tree, in the slicer2/Base/builds/[os-name] subdirectory. |
Build Files |
---|
slicer2/Base/builds/[os-name]
cmake generated files are at this level. |
slicer2/Base/builds/[os-name]/bin
Once built, the shared library files are placed here.
|
slicer2/Base/builds/[os-name]/cxx
The generated, Tcl-wrapped, cxx files are placed here, as well as compiled object files.
|
We are migrating towards a more independent module structure, populating the slicer2/Modules
directory. New modules are added by creating a directory with a name that starts with vtk
, such as vtkCustomModule
. Full instructions, and an automated script, for adding a new module can be found in that subdirectory.
In each module, there is a tcl
subdirectory in which you can place the Tcl files associated with your module. There is also a cxx
directory, similar to the Slicer core cxx
directory.
Module Source Files |
---|
slicer2/Modules/vtkCustomModule/cxx
These are the VTK classes that the Custom Module adds to Slicer.
|
slicer2/Modules/vtkCustomModule/tcl
Tcl files that implement the GUI and functionality of the module.
|
slicer2/Modules/vtkCustomModule/builds/[os-name]
Subdirectories are created for each OS on which you are going to build the C++ classes, for example,
solaris8 . |
Scripts to run Slicer and perform useful functions
are in the slicer2/Scripts
directory.
Shell Scripts |
---|
slicer2/Scripts
Useful shell scripts. Read
slicer2/Scripts/README.scripts for an overview.
|
slicer2/Scripts/genlib.tcl
Runs
cmake and compiles C++ source code for the support libraries that are necessary for slicer to build (VTK, Insight, GSL, TCL, TK, BLT). |
slicer2/Scripts/cmaker.tcl
Runs
cmake and compiles C++ source code. |
slicer2/Scripts/tarup.tcl
Packages Slicer for distribution.
|
This website is also in the Slicer source code tree. You may generate the website and Tcl code documentation locally yourself.
Website |
---|
slicer2/Doc
This directory contains files used to generate this website.
|