RTK/Developers: Difference between revisions

From Openrtk
Jump to navigation Jump to search
No edit summary
(Redirected page to Main Page)
 
(13 intermediate revisions by one other user not shown)
Line 1: Line 1:
== Developer's guide ==
#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.


##=== Source Code ===
== Download and compilation ==


==== Download repository ====
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:
  git clone git@github.com:SimonRit/RTK.git <sourcePath>


  git clone git@github.com:SimonRit/RTK.git <sourcePath>
In order to compile RTK you need the following third party software:
 
==== Compiling ====


In order to compile RTK you need the following third party software:
* Mandatory:  
#[http://www.cmake.org/ CMake >= 2.4]
#[http://www.cmake.org/ CMake >= 2.4]
#[http://www.itk.org/ ITK >= 3.20]
#[http://www.itk.org/ ITK >= 3.20]
Line 22: 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 ===
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.


You can download pre-compiled binaries and the source code [[http://www.cmake.org/cmake/resources/software.html|here]] or via git:
You can download pre-compiled binaries and the source code [http://www.cmake.org/cmake/resources/software.html here] or via git:
 
  git clone git://cmake.org/cmake.git
 
Installation instructions are available, [http://www.cmake.org/Wiki/CMake 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, [http://www.itk.org/ITK/resources/software.html 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, [http://gnuwin32.sourceforge.net/packages/gengetopt.htm here].
 
*''Linux'', you can download the source code, [ftp://ftp.gnu.org/gnu/gengetopt 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, [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 ==
git clone git://cmake.org/cmake.git
}}}
Installation instructions are available  [[http://www.cmake.org/Wiki/CMake|here]].


CMake is used to build ITK, VTK  and VV.
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.


To compile the code, it is used CMake. The common steps to compile for the first time your code are as follows:
== API ==


    #Create a binary folder, called i.e. RKT-bin
The API of the toolkit can be found, [http://www.creatis.insa-lyon.fr/~srit/rtk/index.html here].
    #Go to your binary folder 


=== API ===
== Mailing list ==


=== Geometry ===
If you want to join our mailing list, just click on the link and fill in the subscription form:


=== Mailing list ===
[http://public.kitware.com/cgi-bin/mailman/listinfo/rtk-users RTK's 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:
  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