Axon developer documentation¶
Slides of a development course, with :axon:`training course data <ftp://ftp.cea.fr/pub/dsv/anatomist/data/Programming_with_brainvisa.zip>`_
Python API documentation¶
Axon python API is used by BrainVISA software. It includes modules to manage BrainVISA toolboxes, processes, databases, graphical user interface, etc.
Axon libraries rely on soma.base modules.
It may use soma_workflow to generate workflows for parallel execution on a cluster
It may also use of
soma.aims
if available, for files conversion and identification.and of
anatomist
if available, for viewers.
- This API can be used in several contexts:
in a BrainVISA IPython shell started with
brainvisa --shell
or start shell menuin a BrainVISA process
in a script executed from brainvisa in batch mode:
brainvisa -b -e myScript.py
in a Python script where Brainvisa is loaded using the module
brainvisa.axon
To determine the version of the API, use brainvisa.config.shortVersion
(5.1) or brainvisa.config.fullVersion
(5.1.1).
What about CAPSUL, and what are the plans ?¶
CAPSUL is a new pipelining system designed to replace Axon processes and pipelines API in the future. It is designed as an independent library, and has a different philosophy from Axon legacy system. CAPSUL is released with BrainVISA 4.5 but is not fully integrated yet.
Modules organization¶
The modules of Axon python API are in the top-level package brainvisa.
Main modules¶
brainvisa.axon
: loading Brainvisa in a Python script.brainvisa.processes
: classes about processes and pipelines.brainvisa.data: sub-package containing modules about Brainvisa databases and process parameters.
brainvisa.registration
: referentials and transformations management.brainvisa.anatomist
: specialization of pyanatomist API for Brainvisa. Used by most of Brainvisa viewers.brainvisa.toolboxes
: Toolbox class representing a BrainVISA toolbox.brainvisa.workflow
: Conversion of a Process into a Workflow usable in Soma-workflow.brainvisa.history
: Framework to manage history of processes.
Detailled list of modules in here: Axon python API modules.
Use cases & examples¶
Processes : Any process available in BrainVISA may be used as an example to help in developing new processes. The source code of each process is available directly from BrainVISA inline documentation: just click on the file name in the technical information part of the process documentation.