Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
FSL
fslpy
Commits
98e877c9
Commit
98e877c9
authored
Feb 28, 2020
by
Paul McCarthy
🚵
Browse files
RF,BF: Nifti.header is now protected via property setter - Failure in
Image.save was resulting in a Nifti without a header.
parent
477a43a5
Changes
1
Hide whitespace changes
Inline
Side-by-side
fsl/data/image.py
View file @
98e877c9
...
...
@@ -254,7 +254,7 @@ class Nifti(notifier.Notifier, meta.Meta):
shape
,
pixdim
)
self
.
header
=
header
self
.
__
header
=
header
self
.
__shape
=
shape
self
.
__origShape
=
origShape
self
.
__pixdim
=
pixdim
...
...
@@ -492,6 +492,24 @@ class Nifti(notifier.Notifier, meta.Meta):
return
''
.
join
([
c
for
c
in
val
if
c
in
string
.
printable
]).
strip
()
@
property
def
header
(
self
):
"""Return a reference to the ``nibabel`` header object. """
return
self
.
__header
@
header
.
setter
def
header
(
self
,
header
):
"""Replace the ``nibabel`` header object managed by this ``Nifti``
with a new header. The new header must have the same dimensions,
voxel size, and orientation as the old one.
"""
new
=
Nifti
(
header
)
if
not
(
self
.
sameSpace
(
new
)
and
self
.
ndim
==
new
.
ndim
):
raise
ValueError
(
'Incompatible header'
)
self
.
__header
=
new
@
property
def
niftiVersion
(
self
):
"""Returns the NIFTI file version:
...
...
@@ -1411,12 +1429,6 @@ class Image(Nifti):
nib
.
save
(
self
.
__nibImage
,
tmpfname
)
# nibabel should close any old
# file handles when the image/
# header refs are deleted
self
.
__nibImage
=
None
self
.
header
=
None
# Copy to final destination,
# and reload from there
imcp
.
imcp
(
tmpfname
,
filename
,
overwrite
=
True
)
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment