RTK/Developers

From Openrtk
Redirect page
Jump to navigation Jump to search

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:
  1. CMake >= 2.4
  2. ITK >= 3.20
  3. Gengetopt >= 2.20
  • Optional:
  1. CUDA drivers

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:

RTK's mailing list