File: bst_raw.py

package info (click to toggle)
python-mne 1.3.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 100,172 kB
  • sloc: python: 166,349; pascal: 3,602; javascript: 1,472; sh: 334; makefile: 236
file content (68 lines) | stat: -rw-r--r-- 2,314 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# Authors: Mainak Jas <mainak.jas@telecom-paristech.fr>
#
# License: BSD-3-Clause
from functools import partial

from ...utils import verbose, get_config
from ..utils import (has_dataset, _get_version, _version_doc,
                     _data_path_doc_accept, _download_mne_dataset)


has_brainstorm_data = partial(has_dataset, name='bst_raw')

_description = """
URL: http://neuroimage.usc.edu/brainstorm/DatasetMedianNerveCtf
    - One subject, one acquisition run of 6 minutes
    - Subject stimulated using Digitimer Constant Current Stimulator
      (model DS7A)
    - The run contains 200 electric stimulations randomly distributed between
      left and right:
        - 102 stimulations of the left hand
        - 98 stimulations of the right hand
    - Inter-stimulus interval: jittered between [1500, 2000]ms
    - Stimuli generated using PsychToolBox on Windows PC (TTL pulse generated
      with the parallel port connected to the Digitimer via the rear panel BNC)
"""


@verbose
def data_path(path=None, force_update=False, update_path=True,
              download=True, accept=False, *, verbose=None):    # noqa: D103
    return _download_mne_dataset(
        name='bst_raw', processor='nested_untar', path=path,
        force_update=force_update, update_path=update_path,
        download=download, accept=accept)


_data_path_doc = _data_path_doc_accept.format(
    name='brainstorm', conf='MNE_DATASETS_BRAINSTORM_DATA_PATH')
_data_path_doc = _data_path_doc.replace('brainstorm dataset',
                                        'brainstorm (bst_raw) dataset')
data_path.__doc__ = _data_path_doc


def get_version():  # noqa: D103
    return _get_version('bst_raw')


get_version.__doc__ = _version_doc.format(name='brainstorm')


def description():  # noqa: D103
    """Get description of brainstorm (bst_raw) dataset."""
    for desc in _description.splitlines():
        print(desc)


def _skip_bstraw_data():
    skip_testing = (get_config('MNE_SKIP_TESTING_DATASET_TESTS', 'false') ==
                    'true')
    skip = skip_testing or not has_brainstorm_data()
    return skip


def requires_bstraw_data(func):
    """Skip testing data test."""
    import pytest
    return pytest.mark.skipif(_skip_bstraw_data(),
                              reason='Requires brainstorm dataset')(func)