Difference between revisions of "ITK/Release 4/Modularization/ Add a module"

From KitwarePublic
Jump to navigationJump to search
Line 10: Line 10:
   * [[ITK_Release_4/Modularization/Add a module/CMakeLists.txt |Modules/Filtering/Foo/CMakeLists.txt]]
   * [[ITK_Release_4/Modularization/Add a module/CMakeLists.txt |Modules/Filtering/Foo/CMakeLists.txt]]
   * [[ITK_Release_4/Modularization/Add a module/itk-module.cmake |Modules/Filtering/Foo/itk-module.cmake]]
   * [[ITK_Release_4/Modularization/Add a module/itk-module.cmake |Modules/Filtering/Foo/itk-module.cmake]]
  * [[ITK_Release_4/Modularization/Add a module/src/CMakeLists.txt|Modules/Filtering/Foo/src/CMakeLists.txt]]
   * [[ITK_Release_4/Modularization/Add a module/test/CMakeLists.txt|Modules/Filtering/Foo/test/CMakeLists.txt]]  
   * [[ITK_Release_4/Modularization/Add a module/test/CMakeLists.txt|Modules/Filtering/Foo/test/CMakeLists.txt]]  
 
  * If this module generates a library or libraries (has .cxx source files): [[ITK_Release_4/Modularization/Add a module/src/CMakeLists.txt|Modules/Filtering/Foo/src/CMakeLists.txt]]


An example: Add "ITK-FastMarching" module to ITK [http://review.source.kitware.com/#change,1311]
An example: Add "ITK-FastMarching" module to ITK [http://review.source.kitware.com/#change,1311]

Revision as of 19:16, 4 April 2011

1. Choose a group for your module

 Add your module into  "ITK/CMake/ITKGroups.cmake" to be include in ITK.


2. Organize the source tree.

 Modules are located under "ITK/Modules/<Group>/".
 In each module, there are "include","src", "test" subdirectories, where the headers, source code and testing code are located, respectively.

 The CMake components that are in need for  "ITK-FOO" module in the Filtering group:
  * Modules/Filtering/Foo/CMakeLists.txt
  * Modules/Filtering/Foo/itk-module.cmake
  * Modules/Filtering/Foo/test/CMakeLists.txt 
  * If this module generates a library or libraries (has .cxx source files): Modules/Filtering/Foo/src/CMakeLists.txt

An example: Add "ITK-FastMarching" module to ITK [1]