A starter project for new Gadgetron developers that includes a dockerfile for building out of tree gadgets into new docker images, a few simple template gadgets with common reference structures for Acquisition and Image datatypes, and a reference cmakelist file for building out of tree gadgets.
This example also includes scaffolding for generating ReadTheDocs/Doxygen documentation for the included sample gadget, as well as performing integration tests on new data and configuration files using Gadgetron's test infrastructure.
ChannelGadget that accepts and returns Core::Acquisition, without modifying the acquisition at all
PureGadget that accepts and returns Core::Image<complex>, without modifying the image at all
PureGadget that accepts and returns Core::Image and has one parameter (scaleFactor). Uses an iterator to scale all pixels in the input image via multiplying by scaleFactor
ChannelGadget that accepts and returns Core::Image and has one parameter (scaleFactor). Uses a python script to perform scaling of all pixels in the input image via multiplying by scaleFactor.
ChannelGadget that saves incoming image data to the ISMRMRD Storage Server instance
ChannelGadget that loads previously-stored image data from the ISMRMRD Storage Server instance
Using vscode's devcontainer tools is the easiest way to get started. In vscode, a popup should appear when opening this repository offering to rebuild and reopen in a devcontainer - click yes, and The included docker file will be built and the repository will be mapped in so you can immediately start modifying code.
- Docker
- VSCode
- Devcontainer extension for VSCode
- Open vscode
- Press F1-> Rebuild and Reopen in Devcontainer
- mkdir build
- cd build
- cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${CONDA_PREFIX} ../
- ninja install
- cd test
- Run: ./getData.sh
- Run: ./runTests.sh cases/*
Once your code is in a stable state, a final docker container can be built using docker build .
that strips out code and all dev dependencies to create a runtime environment including the new OOT gadgets.