|
10 | 10 | niigz = ".nii.gz" |
11 | 11 |
|
12 | 12 | # make sure we use system dcm2niix |
13 | | -os.environ['PATH'] = '/usr/local/bin:' + os.environ['PATH'] |
| 13 | +os.environ["PATH"] = "/usr/local/bin:" + os.environ["PATH"] |
| 14 | + |
14 | 15 |
|
15 | 16 | def final_scan(sourcenames, multiecho=False): |
16 | 17 | # if single-echo: |
@@ -55,6 +56,17 @@ def final_scan(sourcenames, multiecho=False): |
55 | 56 | return sorted(files[ids[-1]]) |
56 | 57 |
|
57 | 58 |
|
| 59 | +def record_studydir_state(studydir, task): |
| 60 | + # record the state of the studydir before we start messing with it |
| 61 | + state_file = pjoin(studydir, f".state-pre-{task}") |
| 62 | + with open(state_file, "w") as f: |
| 63 | + for root, dirs, files in os.walk(studydir): |
| 64 | + for name in sorted(dirs + files): |
| 65 | + relpath = os.path.relpath(pjoin(root, name), studydir) |
| 66 | + if relpath != os.path.relpath(state_file, studydir): |
| 67 | + f.write(relpath + "\n") |
| 68 | + |
| 69 | + |
58 | 70 | def convert_to_nifti(studydir): |
59 | 71 | logging.info("Converting to nifti") |
60 | 72 | dicomdir = pjoin(studydir, "scans") |
@@ -85,16 +97,18 @@ def convert_to_bids(config, studydir, subject, session): |
85 | 97 | open(pjoin(studydir, "dataset_description.json"), "w").write( |
86 | 98 | """ |
87 | 99 | { |
88 | | - "Name": "none", |
89 | | - "BIDSVersion": "1.2.0", |
| 100 | + "Name": "Investigator Name", |
| 101 | + "BIDSVersion": "1.10.0", |
90 | 102 | "Authors": ["name1", "name1"], |
91 | | - "Funding": ["NIH"] |
| 103 | + "Funding": ["Funding Agency"] |
92 | 104 | } |
93 | 105 | """ |
94 | 106 | ) |
95 | 107 | open(pjoin(studydir, "README"), "w").write("\n") |
96 | 108 | open(pjoin(studydir, "CHANGES"), "w").write("\n") |
97 | | - open(pjoin(studydir, ".bidsignore"), "w").write(".job*\n.task*\n") |
| 109 | + bids_ignore = [".job*", ".task*", ".state*"] |
| 110 | + with open(pjoin(studydir, ".bidsignore"), "w") as f: |
| 111 | + f.write("\n".join(bids_ignore) + "\n") |
98 | 112 |
|
99 | 113 | # move data into sourcedata |
100 | 114 | for _ in ("nifti", "scans"): |
|
0 commit comments