File tree Expand file tree Collapse file tree 3 files changed +19
-4
lines changed Expand file tree Collapse file tree 3 files changed +19
-4
lines changed Original file line number Diff line number Diff line change @@ -704,6 +704,12 @@ def __array__(self):
704
704
frame_mapping [i ][0 ])
705
705
return data
706
706
707
+ def get_scaled (self , dtype = None ):
708
+ data = self .__array__ ()
709
+ if dtype is not None and np .dtype (dtype ) > data .dtype :
710
+ data = data .astype (dtype )
711
+ return data
712
+
707
713
def __getitem__ (self , sliceobj ):
708
714
""" Return slice `sliceobj` from ECAT data, optimizing if possible
709
715
"""
Original file line number Diff line number Diff line change @@ -261,13 +261,22 @@ def ndim(self):
261
261
def is_proxy (self ):
262
262
return True
263
263
264
+ def _get_scaled (self , dtype , slicer ):
265
+ data = self .minc_file .get_scaled_data (slicer )
266
+ if dtype is not None and np .dtype (dtype ) > data .dtype :
267
+ data = data .astype (dtype )
268
+ return data
269
+
270
+ def get_scaled (self , dtype = None ):
271
+ return self ._get_scaled (dtype = dtype , slicer = ())
272
+
264
273
def __array__ (self ):
265
274
''' Read of data from file '''
266
- return self .minc_file . get_scaled_data ( )
275
+ return self ._get_scaled ( dtype = None , slicer = () )
267
276
268
277
def __getitem__ (self , sliceobj ):
269
278
""" Read slice `sliceobj` of data from file """
270
- return self .minc_file . get_scaled_data ( sliceobj )
279
+ return self ._get_scaled ( dtype = None , slicer = sliceobj )
271
280
272
281
273
282
class MincHeader (SpatialHeader ):
Original file line number Diff line number Diff line change @@ -195,8 +195,8 @@ class DataLike(object):
195
195
# Minimal class implementing 'data' API
196
196
shape = (3 ,)
197
197
198
- def __array__ (self ):
199
- return np .arange (3 , dtype = np . int16 )
198
+ def __array__ (self , dtype = 'int16' ):
199
+ return np .arange (3 , dtype = dtype )
200
200
201
201
202
202
class TestSpatialImage (TestCase ):
You can’t perform that action at this time.
0 commit comments