Metadata-Version: 2.1
Name: pydra-dcm2niix
Version: 1.2.0
Summary: Provides a task interface for the popular dcm2niix DICOM to NIfTI converter
Home-page: UNKNOWN
Author: Thomas G. Close
Author-email: tom.g.close@gmail.com
License: Apache License, 2.0
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.7
Description-Content-Type: text/markdown; variant=CommonMark
Requires-Dist: pydra (>=0.19)
Provides-Extra: all
Requires-Dist: packaging ; extra == 'all'
Requires-Dist: sphinx (>=2.1.2) ; extra == 'all'
Requires-Dist: sphinx-rtd-theme ; extra == 'all'
Requires-Dist: sphinxcontrib-apidoc (~=0.3.0) ; extra == 'all'
Requires-Dist: sphinxcontrib-napoleon ; extra == 'all'
Requires-Dist: sphinxcontrib-versioning ; extra == 'all'
Requires-Dist: pytest (>=4.4.0) ; extra == 'all'
Requires-Dist: pytest-cov ; extra == 'all'
Requires-Dist: pytest-env ; extra == 'all'
Requires-Dist: pytest-xdist ; extra == 'all'
Requires-Dist: pytest-rerunfailures ; extra == 'all'
Requires-Dist: codecov ; extra == 'all'
Requires-Dist: black ; extra == 'all'
Requires-Dist: pre-commit ; extra == 'all'
Provides-Extra: dev
Requires-Dist: pytest (>=4.4.0) ; extra == 'dev'
Requires-Dist: pytest-cov ; extra == 'dev'
Requires-Dist: pytest-env ; extra == 'dev'
Requires-Dist: pytest-xdist ; extra == 'dev'
Requires-Dist: pytest-rerunfailures ; extra == 'dev'
Requires-Dist: codecov ; extra == 'dev'
Requires-Dist: black ; extra == 'dev'
Requires-Dist: pre-commit ; extra == 'dev'
Provides-Extra: doc
Requires-Dist: packaging ; extra == 'doc'
Requires-Dist: sphinx (>=2.1.2) ; extra == 'doc'
Requires-Dist: sphinx-rtd-theme ; extra == 'doc'
Requires-Dist: sphinxcontrib-apidoc (~=0.3.0) ; extra == 'doc'
Requires-Dist: sphinxcontrib-napoleon ; extra == 'doc'
Requires-Dist: sphinxcontrib-versioning ; extra == 'doc'
Provides-Extra: docs
Requires-Dist: packaging ; extra == 'docs'
Requires-Dist: sphinx (>=2.1.2) ; extra == 'docs'
Requires-Dist: sphinx-rtd-theme ; extra == 'docs'
Requires-Dist: sphinxcontrib-apidoc (~=0.3.0) ; extra == 'docs'
Requires-Dist: sphinxcontrib-napoleon ; extra == 'docs'
Requires-Dist: sphinxcontrib-versioning ; extra == 'docs'
Provides-Extra: test
Requires-Dist: pytest (>=4.4.0) ; extra == 'test'
Requires-Dist: pytest-cov ; extra == 'test'
Requires-Dist: pytest-env ; extra == 'test'
Requires-Dist: pytest-xdist ; extra == 'test'
Requires-Dist: pytest-rerunfailures ; extra == 'test'
Requires-Dist: codecov ; extra == 'test'
Provides-Extra: tests
Requires-Dist: pytest (>=4.4.0) ; extra == 'tests'
Requires-Dist: pytest-cov ; extra == 'tests'
Requires-Dist: pytest-env ; extra == 'tests'
Requires-Dist: pytest-xdist ; extra == 'tests'
Requires-Dist: pytest-rerunfailures ; extra == 'tests'
Requires-Dist: codecov ; extra == 'tests'

# Pydra Dcm2Niix Task

This repository contains Pydra task interface for the `dcm2niix`
DICOM to NIfTI converter tool (https://github.com/rordenlab/dcm2niix).

Part of this effort is to establish a (mostly) declarative language for describing tasks that
potentially have intricate rules for determining the availability and names from the choice of
inputs.

## Installation
```
pip install /path/to/pydra-dcm2niix/
```

### Installation for developers
```
pip install -e /path/to/pydra-dcm2niix/[dev]
```

## Basic Use

To run the `dcm2niix` task

```
from pydra.tasks.dcm2niix import Dcm2Niix

task = Dcm2Niix(in_dir='/path/to/dicom/dir', out_dir='/path/to/create/nifti/output')
result = task()
```

However, the converter task interface will typically be used as the first step within larger Pydra workflows

```
from pydra import Workflow
from pydra.tasks.dcm2niix import Dcm2Niix

my_workflow = Workflow(name='my_workflow', input_spec=['in_dicom'])

my_workflow.add(
    Dcm2Niix(name='converter', in_dir=my_workflow.lzin.in_dicom, out_dir='.'))
my_workflow.add(...)

my_workflow()
```


