RTK/Developers: Difference between revisions
No edit summary |
(Redirected page to Main Page) |
||
(4 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
#REDIRECT [[Main_Page]] | |||
This section is aimed to assist in the development of RTK. | This section is aimed to assist in the development of RTK. | ||
== Download and compilation == | |||
The RTK source code can be retrieved from RTK's git repository using the following command: | The RTK source code can be retrieved from RTK's git repository using the following command: | ||
Line 19: | Line 19: | ||
#[http://www.nvidia.com/Download/index.aspx?lang=en-us CUDA drivers] | #[http://www.nvidia.com/Download/index.aspx?lang=en-us CUDA drivers] | ||
=== CMake === | |||
CMake is a family of tools designed to build, test and package software. | CMake is a family of tools designed to build, test and package software. | ||
Line 30: | Line 30: | ||
CMake is used to build ITK and RTK, among other platforms. | CMake is used to build ITK and RTK, among other platforms. | ||
=== ITK === | |||
ITK is an open-source, cross-platform system that provides developers with an extensive suite of software tools for image analysis. | ITK is an open-source, cross-platform system that provides developers with an extensive suite of software tools for image analysis. | ||
Line 51: | Line 51: | ||
Set ITK_USE_OPTIMIZED_REGISTRATION_METHODS to ON | Set ITK_USE_OPTIMIZED_REGISTRATION_METHODS to ON | ||
=== Gengetopt === | |||
Gengetopt is a tool to write command line option parsing code for C programs. | Gengetopt is a tool to write command line option parsing code for C programs. | ||
Line 69: | Line 69: | ||
sudo make install | sudo make install | ||
=== RTK === | |||
Last step is to compile RTK and we also use CMake. Compilation process as follows: | Last step is to compile RTK and we also use CMake. Compilation process as follows: | ||
Line 77: | Line 77: | ||
make | make | ||
== | == Coding style == | ||
=== RTK's coding convention === | |||
RTK follows ITK's coding convention. As an ITK based platform, we decided to follow the same coding style as ITK, therefore any developer | |||
should follow these conventions when submitting new code or contributions to the existing one. | |||
If you wish to contribute code to RTK's platform, we strongly recommend you to read thoroughly ITK's coding standards which can be found, [http://www.vtk.org/Wiki/ITK/Coding_Style_Guide, here]. | |||
=== Code organization === | |||
The code is organized as follows: | |||
*applications/ | |||
*cmake/ | |||
*code/ | |||
*documentation/ | |||
*Doxygen/ | |||
*examples/ | |||
*testing/ | |||
If you have any doubt where to locate your new code, do not hesitate to contact us by the mailing list, [http://www.openrtk.org/RTK/project/contactus.html contact]. | |||
== Geometry == | == Geometry == | ||
Line 86: | Line 105: | ||
radiotherapy systems but it can be used for any 3D circular trajectory. The fixed coordinate system of RTK and the fixed coordinate system of | radiotherapy systems but it can be used for any 3D circular trajectory. The fixed coordinate system of RTK and the fixed coordinate system of | ||
IEC 61217 are the same. | IEC 61217 are the same. | ||
== API == | |||
The API of the toolkit can be found, [http://www.creatis.insa-lyon.fr/~srit/rtk/index.html here]. | |||
== Mailing list == | == Mailing list == |
Latest revision as of 09:10, 22 October 2012
Redirect to:
This section is aimed to assist in the development of RTK.
Download and compilation
The RTK source code can be retrieved from RTK's git repository using the following command:
git clone git@github.com:SimonRit/RTK.git <sourcePath>
In order to compile RTK you need the following third party software:
- Mandatory:
- Optional:
CMake
CMake is a family of tools designed to build, test and package software.
You can download pre-compiled binaries and the source code here or via git:
git clone git://cmake.org/cmake.git
Installation instructions are available, here.
CMake is used to build ITK and RTK, among other platforms.
ITK
ITK is an open-source, cross-platform system that provides developers with an extensive suite of software tools for image analysis.
You can download the source code, here or via git:
git clone git://itk.org/ITK.git <sourcePath> git checkout v3.20.0
Create a binary directory, i.e. itk-bin, get into it and run CMake:
mkdir itk-bin cd itk-bin ccmake ../itk make
Note: it is preferable to use the following options for registration:
Set ITK_USE_REVIEW to ON Set ITK_USE_OPTIMIZED_REGISTRATION_METHODS to ON
Gengetopt
Gengetopt is a tool to write command line option parsing code for C programs.
- Windows, you can download the binary, here.
- Linux, you can download the source code, here
or via git:
git clone git://git.sv.gnu.org/gengetopt.git
Compilation:
mkdir gengetopt-bin cd gengetopt-bin ../gengetopt/configure make sudo make install
RTK
Last step is to compile RTK and we also use CMake. Compilation process as follows:
mkdir rtk-bin cd rtk-bin ccmake ../rtk make
Coding style
RTK's coding convention
RTK follows ITK's coding convention. As an ITK based platform, we decided to follow the same coding style as ITK, therefore any developer should follow these conventions when submitting new code or contributions to the existing one.
If you wish to contribute code to RTK's platform, we strongly recommend you to read thoroughly ITK's coding standards which can be found, here.
Code organization
The code is organized as follows:
- applications/
- cmake/
- code/
- documentation/
- Doxygen/
- examples/
- testing/
If you have any doubt where to locate your new code, do not hesitate to contact us by the mailing list, contact.
Geometry
The description of the geometry is based on the international standard IEC 61217 which has been designed for cone-beam imagers on isocentric radiotherapy systems but it can be used for any 3D circular trajectory. The fixed coordinate system of RTK and the fixed coordinate system of IEC 61217 are the same.
API
The API of the toolkit can be found, here.
Mailing list
If you want to join our mailing list, just click on the link and fill in the subscription form: