Toggle Light / Dark / Auto color theme
Toggle table of contents sidebar
Source code for CPAC.utils.misc
# emacs: -*- mode: python; py-indent-offset: 4; indent-tabs-mode: nil -*-
# vi: set ft=python sts=4 ts=4 sw=4 et:
"""
Miscellaneous utilities
"""
# This functionality is adapted from poldracklab/niworkflows:
# https://github.com/poldracklab/niworkflows/blob/master/niworkflows/utils/misc.py
# https://fmriprep.readthedocs.io/
# https://poldracklab.stanford.edu/
# We are temporarily maintaining our own copy for more granular control.
__all__ = [ 'get_template_specs' ]
[docs] def get_template_specs ( in_template , template_spec = None , default_resolution = 1 ):
"""
Parse template specifications
>>> get_template_specs('MNI152NLin2009cAsym', {'suffix': 'T1w'})[1] # doctest: +SKIP
{'resolution': 1}
>>> get_template_specs('MNI152NLin2009cAsym', {'res': '2', 'suffix': 'T1w'})[1] # doctest: +SKIP
{'resolution': '2'}
>>> get_template_specs('MNIInfant', {'res': '2', 'cohort': '10', 'suffix': 'T1w'})[1] # doctest: +SKIP
{'resolution': '2', 'cohort': '10'}
>>> get_template_specs('MNI152NLin2009cAsym',
... {'suffix': 'T1w', 'cohort': 1})[1] # doctest: +IGNORE_EXCEPTION_DETAIL +SKIP
Traceback (most recent call last):
RuntimeError:
...
>>> get_template_specs('MNI152NLin2009cAsym',
... {'suffix': 'T1w', 'res': '1|2'})[1] # doctest: +IGNORE_EXCEPTION_DETAIL +SKIP
Traceback (most recent call last):
RuntimeError:
...
"""
# from templateflow.api import get as get_template
# Massage spec (start creating if None)
template_spec = template_spec or {}
template_spec [ 'desc' ] = template_spec . get ( 'desc' , None )
template_spec [ 'atlas' ] = template_spec . get ( 'atlas' , None )
template_spec [ 'resolution' ] = template_spec . pop (
'res' , template_spec . get ( 'resolution' , default_resolution ))
common_spec = { 'resolution' : template_spec [ 'resolution' ]}
if 'cohort' in template_spec :
common_spec [ 'cohort' ] = template_spec [ 'cohort' ]
if __name__ == '__main__' :
pass