Browse Source

added abstract class VolumeFile

Fabian Peter Hammerle 5 years ago
parent
commit
111c081c3a

+ 10 - 0
freesurfer_volume_reader/__init__.py

@@ -9,3 +9,13 @@ https://surfer.nmr.mgh.harvard.edu/fswiki/HippocampalSubfields
 >>>     print(volume_file.read_volumes_mm3())
 >>>     print(volume_file.read_volumes_dataframe())
 """
+
+import abc
+
+# pylint: disable=too-few-public-methods
+class VolumeFile(metaclass=abc.ABCMeta):
+
+    @property
+    @abc.abstractmethod
+    def absolute_path(self):
+        raise NotImplementedError()

+ 3 - 1
freesurfer_volume_reader/ashs.py

@@ -12,8 +12,10 @@ https://sites.google.com/site/hipposubfields/home
 import os
 import re
 
+import freesurfer_volume_reader
+
 # pylint: disable=too-few-public-methods
-class HippocampalSubfieldsVolumeFile:
+class HippocampalSubfieldsVolumeFile(freesurfer_volume_reader.VolumeFile):
 
     # https://sites.google.com/site/hipposubfields/tutorial#TOC-Viewing-ASHS-Segmentation-Results
     FILENAME_PATTERN = r'^(?P<s>\w+)_(?P<h>left|right)' \

+ 3 - 1
freesurfer_volume_reader/freesurfer.py

@@ -16,8 +16,10 @@ import typing
 
 import pandas
 
+import freesurfer_volume_reader
 
-class HippocampalSubfieldsVolumeFile:
+
+class HippocampalSubfieldsVolumeFile(freesurfer_volume_reader.VolumeFile):
 
     # https://surfer.nmr.mgh.harvard.edu/fswiki/HippocampalSubfields
     FILENAME_PATTERN = r'^(?P<h>[lr])h\.hippoSfVolumes' \