Skip to content

Commit b4c190d

Browse files
committed
added in mrtrix formats into fileformats-mrtrix
1 parent e51b714 commit b4c190d

File tree

5 files changed

+55
-7
lines changed

5 files changed

+55
-7
lines changed

lib/mrtrix3/app.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1212,9 +1212,9 @@ def escape_id(id_: str) -> str:
12121212
"from pathlib import Path # noqa: F401\n"
12131213
"from fileformats.generic import FsObject, File, Directory # noqa: F401\n"
12141214
"from fileformats.medimage import MrtrixTrack # noqa: F401\n"
1215+
"from fileformats.mrtrix3 import ImageIn, ImageOut # noqa: F401\n"
12151216
"from pydra.engine.task import ShellCommandTask \n"
12161217
"from pydra.engine import specs\n"
1217-
"from pydra.tasks.mrtrix3.fileformats import ImageIn, ImageOut # noqa: F401\n"
12181218
)
12191219

12201220
text += f"input_fields = {inputs_str}\n"
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,7 @@
11
from ._version import __version__
22

3+
from .image import ImageFormat, ImageHeader, ImageIn, ImageOut
4+
from .dwi import (
5+
Bfile, NiftiB, NiftiGzB, NiftiGzXB, NiftiXB
6+
)
7+
from .track import TrackFile
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
from fileformats.core import mark
2+
from fileformats.core.mixin import WithAdjacentFiles
3+
from fileformats.generic import File
4+
from fileformats.medimage import DwiEncoding
5+
6+
7+
class Bfile(DwiEncoding):
8+
"""MRtrix-style diffusion encoding, all in one file"""
9+
10+
ext = ".b"
11+
12+
13+
# NIfTI file format gzipped with BIDS side car
14+
class WithBfile(WithAdjacentFiles):
15+
@mark.required
16+
@property
17+
def encoding(self) -> Bfile:
18+
return Bfile(self.select_by_ext(Bfile))
19+
20+
21+
class NiftiB(WithBfile, Nifti1):
22+
iana_mime = "application/x-nifti2+b"
23+
24+
25+
class NiftiGzB(WithBfile, NiftiGz):
26+
iana_mime = "application/x-nifti2+gzip.b"
27+
28+
29+
class NiftiXB(WithBfile, NiftiX):
30+
iana_mime = "application/x-nifti2+json.b"
31+
32+
33+
class NiftiGzXB(WithBfile, NiftiGzX):
34+
iana_mime = "application/x-nifti2+gzip.json.b"
35+
36+

pydra/fileformats-mrtrix3/fileformats/mrtrix3/images.py renamed to pydra/fileformats-mrtrix3/fileformats/mrtrix3/image.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -104,28 +104,29 @@ class ImageDataFile(File):
104104
ext = ".dat"
105105

106106

107-
SupportedImageIn = ty.Union[
107+
ImageIn = ty.Union[
108+
ImageFormat,
109+
ImageHeader,
110+
fileformats.misc.Dicom,
108111
fileformats.medimage.DicomDir,
109112
fileformats.medimage.NiftiGzX,
110113
fileformats.medimage.NiftiGz,
111114
fileformats.medimage.NiftiX,
112115
fileformats.medimage.Nifti1,
113116
fileformats.medimage.Nifti2,
114-
ImageFormat,
115-
ImageHeader,
116117
fileformats.medimage.MGH,
117118
fileformats.medimage.MGHZip,
118119
fileformats.medimage.Analyze,
119120
]
120121

121-
SupportedImageOut = ty.Union[
122+
ImageOut = ty.Union[
123+
ImageFormat,
124+
ImageHeader,
122125
fileformats.medimage.NiftiGzX,
123126
fileformats.medimage.NiftiGz,
124127
fileformats.medimage.NiftiX,
125128
fileformats.medimage.Nifti1,
126129
fileformats.medimage.Nifti2,
127-
ImageFormat,
128-
ImageHeader,
129130
fileformats.medimage.MGH,
130131
fileformats.medimage.MGHZip,
131132
fileformats.medimage.Analyze,
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
from fileformats.generic import File
2+
3+
4+
class TrackFile(File):
5+
6+
ext = ".tck"

0 commit comments

Comments
 (0)