From 526cfdee096ee36ccd206bd04a1af09b5097396a Mon Sep 17 00:00:00 2001
From: Paul McCarthy <pauldmccarthy@gmail.com>
Date: Wed, 17 Jan 2018 18:31:08 +0000
Subject: [PATCH] MGHImage retains the original file name

---
 fsl/data/mghimage.py | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/fsl/data/mghimage.py b/fsl/data/mghimage.py
index c65411dd5..9ba9c27e3 100644
--- a/fsl/data/mghimage.py
+++ b/fsl/data/mghimage.py
@@ -40,13 +40,28 @@ class MGHImage(fslimage.Image):
         """
 
         if isinstance(image, six.string_types):
-            image = nib.load(image)
+            filename = image
+            image    = nib.load(image)
+        else:
+            filename = None
 
         data   = image.get_data()
         affine = image.affine
 
         fslimage.Image.__init__(self, data, xform=affine)
 
+        if filename is not None:
+            self.setMeta('mghImageFile', filename)
+
+
+    @property
+    def mghImageFile(self):
+        """If this ``MGHImage`` was loaded from a file, returns the file
+        name. Otherwise returns ``None``.
+        """
+        return self.getMeta('mghImageFile', None)
+
+
 
 ALLOWED_EXTENSIONS = ['.mgz', '.mgh']
 """List of file extensions interpreted as MGH image files.
-- 
GitLab