A suite of tools for medical image processing focused on brain analysis
The BRAINSTools project is a harness to assist in building the many BRAINSTools under development.
Example session for a clean build on Linux using gcc-4.2:
DIRECTORY=~/src/mytester
mkdir ${DIRECTORY}
cd ${DIRECTORY}
git clone https://github.com/BRAINSia/BRAINSTools.git
For developers:
cd ${DIRECTORY}/BRAINSTools/
bash ./Utilities/SetupForDevelopment.sh
Finally:
mkdir -p ${DIRECTORY}/BRAINSTools-build
cd ${DIRECTORY}/BRAINSTools-build/
CC=/usr/bin/gcc-4.2 \
CXX=/usr/bin/g++-4.2 \
ccmake ../BRAINSTools \
-DUSE_BRAINSFit:BOOL=ON \
-DUSE_BRAINSConstellationDetector:BOOL=ON \
-DUSE_BRAINSABC:BOOL=ON
make -j24 -k
## NOTE: The fetching of data still has problems
## with parallel builds, so you may need to restart it a few times...
make
make
make
Developers should run the “./Utilities/SetupForDevelopment.sh” script to get started.
BRAINSTools_MAX_TEST_LEVEL
adjusts how agressive the test suite is so that long running tests or incomplete tests can easily be silenced
set(BRAINSTools_MAX_TEST_LEVEL 3
CACHE STRING "Testing level for managing test burden")
1 - Run the absolute minimum (very fast tests)
3 - Run fast tests on continous builds.
5 - Run moderate nightly tests.
7 - Run long running extensive test that are a burden to normal development.
8 - Run tests that fail due to incomplete test building.
9 - Run tests that don’t have much utility currently.
setting a test’s max level in TestSuite/CMakeLists.txt
if( ${BRAINSTools_MAX_TEST_LEVEL} GREATER 8)
ExternalData_add_test(FindCenterOfBrainFetchData
NAME itkResampleInPlaceImageFilterTest
COMMAND $<TARGET_FILE:itkResampleInPlaceImageFilterTest>
itkResampleInPlaceImageFilterTest input1 transform1 checkresult
)