Skip to content

Commit

Permalink
Remove superfluous FormatClass.get_mask() calls
Browse files Browse the repository at this point in the history
  • Loading branch information
rjgildea committed Aug 23, 2019
1 parent 7dbd7bc commit bf2a6cf
Show file tree
Hide file tree
Showing 11 changed files with 0 additions and 193 deletions.
27 changes: 0 additions & 27 deletions format/FormatCBFFullPilatus.py
Original file line number Diff line number Diff line change
Expand Up @@ -149,33 +149,6 @@ def get_raw_data(self):

return self._raw_data

def get_mask(self, goniometer=None):
from scitbx.array_family import flex

detector = self.get_detector()
mask = [
flex.bool(flex.grid(reversed(p.get_image_size())), True) for p in detector
]
for i, p in enumerate(detector):
untrusted_regions = p.get_mask()
for j, (f0, s0, f1, s1) in enumerate(untrusted_regions):
sub_array = flex.bool(flex.grid(s1 - s0, f1 - f0), False)
mask[i].matrix_paste_block_in_place(sub_array, s0, f0)

if len(detector) == 1:
raw_data = [self.get_raw_data()]
else:
raw_data = self.get_raw_data()
assert len(raw_data) == len(detector)
trusted_mask = [
p.get_trusted_range_mask(im) for im, p in zip(raw_data, detector)
]

# returns merged untrusted pixels and active areas using bitwise AND
# (pixels are accepted if they are inside of the active areas AND inside
# of the trusted range)
return tuple(m & tm for m, tm in zip(mask, trusted_mask))

def get_vendortype(self):
from dxtbx.format.FormatPilatusHelpers import get_vendortype as gv

Expand Down
13 changes: 0 additions & 13 deletions format/FormatCBFFullPilatusDLS300KSN104.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,19 +55,6 @@ def __init__(self, image_file, **kwargs):
self._dynamic_shadowing = self.has_dynamic_shadowing(**kwargs)
FormatCBFFullPilatus.__init__(self, image_file, **kwargs)

def get_mask(self, goniometer=None):
mask = super(FormatCBFFullPilatusDLS300KSN104, self).get_mask()
if self._dynamic_shadowing:
gonio_masker = self.get_goniometer_shadow_masker(goniometer=goniometer)
scan = self.get_scan()
detector = self.get_detector()
shadow_mask = gonio_masker.get_mask(detector, scan.get_oscillation()[0])
assert len(mask) == len(shadow_mask)
for m, sm in zip(mask, shadow_mask):
if sm is not None:
m &= ~sm
return mask

def get_goniometer_shadow_masker(self, goniometer=None):
if goniometer is None:
goniometer = self.get_goniometer()
Expand Down
13 changes: 0 additions & 13 deletions format/FormatCBFFullPilatusDLS6MSN100.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,19 +51,6 @@ def __init__(self, image_file, **kwargs):
self._dynamic_shadowing = self.has_dynamic_shadowing(**kwargs)
FormatCBFFullPilatus.__init__(self, image_file, **kwargs)

def get_mask(self, goniometer=None):
mask = super(FormatCBFFullPilatusDLS6MSN100, self).get_mask()
if self._dynamic_shadowing:
gonio_masker = self.get_goniometer_shadow_masker(goniometer=goniometer)
scan = self.get_scan()
detector = self.get_detector()
shadow_mask = gonio_masker.get_mask(detector, scan.get_oscillation()[0])
assert len(mask) == len(shadow_mask)
for m, sm in zip(mask, shadow_mask):
if sm is not None:
m &= sm
return mask

def get_goniometer_shadow_masker(self, goniometer=None):
if goniometer is None:
goniometer = self.get_goniometer()
Expand Down
17 changes: 0 additions & 17 deletions format/FormatCBFFullPilatusDLS6MSN126.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,23 +56,6 @@ def __init__(self, image_file, **kwargs):
self._dynamic_shadowing = self.has_dynamic_shadowing(**kwargs)
FormatCBFFullPilatus.__init__(self, image_file, **kwargs)

def get_mask(self, goniometer=None):
mask = super(FormatCBFFullPilatusDLS6MSN126, self).get_mask()

# when device was installed with SmarGon on I03 this was the signature
# now it lives on i02-1 => detect - at the moment device has single
# axis in new home
if len(self.get_goniometer().get_names()) == 3 and self._dynamic_shadowing:
gonio_masker = self.get_goniometer_shadow_masker(goniometer=goniometer)
scan = self.get_scan()
detector = self.get_detector()
shadow_mask = gonio_masker.get_mask(detector, scan.get_oscillation()[0])
assert len(mask) == len(shadow_mask)
for m, sm in zip(mask, shadow_mask):
if sm is not None:
m &= sm
return mask

def get_goniometer_shadow_masker(self, goniometer=None):
if goniometer is None:
goniometer = self.get_goniometer()
Expand Down
27 changes: 0 additions & 27 deletions format/FormatCBFMiniEiger.py
Original file line number Diff line number Diff line change
Expand Up @@ -201,33 +201,6 @@ def get_raw_data(self):

return self._raw_data

def get_mask(self, goniometer=None):
from scitbx.array_family import flex

detector = self.get_detector()
mask = [
flex.bool(flex.grid(reversed(p.get_image_size())), True) for p in detector
]
for i, p in enumerate(detector):
untrusted_regions = p.get_mask()
for j, (f0, s0, f1, s1) in enumerate(untrusted_regions):
sub_array = flex.bool(flex.grid(s1 - s0, f1 - f0), False)
mask[i].matrix_paste_block_in_place(sub_array, s0, f0)

if len(detector) == 1:
raw_data = [self.get_raw_data()]
else:
raw_data = self.get_raw_data()
assert len(raw_data) == len(detector)
trusted_mask = [
p.get_trusted_range_mask(im) for im, p in zip(raw_data, detector)
]

# returns merged untrusted pixels and active areas using bitwise AND
# (pixels are accepted if they are inside of the active areas AND
# inside of the trusted range)
return tuple([m & tm for m, tm in zip(mask, trusted_mask)])

def detectorbase_start(self):
from iotbx.detectors.eiger_minicbf import EigerCBFImage

Expand Down
13 changes: 0 additions & 13 deletions format/FormatCBFMiniEigerDLS16MSN160.py
Original file line number Diff line number Diff line change
Expand Up @@ -90,19 +90,6 @@ def _goniometer(self):
axes, angles, names, scan_axis=2
)

def get_mask(self, goniometer=None):
mask = super(FormatCBFMiniEigerDLS16MSN160, self).get_mask()
if self._dynamic_shadowing:
gonio_masker = self.get_goniometer_shadow_masker(goniometer=goniometer)
scan = self.get_scan()
detector = self.get_detector()
shadow_mask = gonio_masker.get_mask(detector, scan.get_oscillation()[0])
assert len(mask) == len(shadow_mask)
for m, sm in zip(mask, shadow_mask):
if sm is not None:
m &= sm
return mask

def get_goniometer_shadow_masker(self, goniometer=None):
if goniometer is None:
goniometer = self.get_goniometer()
Expand Down
26 changes: 0 additions & 26 deletions format/FormatCBFMiniPilatus.py
Original file line number Diff line number Diff line change
Expand Up @@ -93,32 +93,6 @@ def _scan(self):
self._image_file, format, exposure_time, osc_start, osc_range, timestamp
)

def get_mask(self, goniometer=None):
from scitbx.array_family import flex

detector = self.get_detector()
mask = [
flex.bool(flex.grid(reversed(p.get_image_size())), True) for p in detector
]
for i, p in enumerate(detector):
untrusted_regions = p.get_mask()
for j, (f0, s0, f1, s1) in enumerate(untrusted_regions):
sub_array = flex.bool(flex.grid(s1 - s0, f1 - f0), False)
mask[i].matrix_paste_block_in_place(sub_array, s0, f0)

if len(detector) == 1:
raw_data = [self.get_raw_data()]
else:
raw_data = self.get_raw_data()
assert len(raw_data) == len(detector)
trusted_mask = [
p.get_trusted_range_mask(im) for im, p in zip(raw_data, detector)
]

# returns merged untrusted pixels and active areas using bitwise AND (pixels are accepted
# if they are inside of the active areas AND inside of the trusted range)
return tuple([m & tm for m, tm in zip(mask, trusted_mask)])

def get_vendortype(self):
from dxtbx.format.FormatPilatusHelpers import get_vendortype as gv

Expand Down
18 changes: 0 additions & 18 deletions format/FormatCBFMiniPilatusDLS12M.py
Original file line number Diff line number Diff line change
Expand Up @@ -211,24 +211,6 @@ def get_goniometer_shadow_masker(self, goniometer=None):
goniometer = self.get_goniometer()
return GoniometerMaskerFactory.dls_i23_kappa(goniometer)

def get_mask(self, goniometer=None):
from dxtbx.model import MultiAxisGoniometer

mask = super(FormatCBFMiniPilatusDLS12M, self).get_mask()
if (
isinstance(self.get_goniometer(), MultiAxisGoniometer)
and self._dynamic_shadowing
):
gonio_masker = self.get_goniometer_shadow_masker(goniometer=goniometer)
scan = self.get_scan()
detector = self.get_detector()
shadow_mask = gonio_masker.get_mask(detector, scan.get_oscillation()[0])
assert len(mask) == len(shadow_mask)
for m, sm in zip(mask, shadow_mask):
if sm is not None:
m &= sm
return mask

def _goniometer(self):
"""Return a model for a simple single-axis goniometer. This should
probably be checked against the image header."""
Expand Down
13 changes: 0 additions & 13 deletions format/FormatCBFMiniPilatusDLS6MSN100.py
Original file line number Diff line number Diff line change
Expand Up @@ -357,19 +357,6 @@ def _detector(self):
def get_goniometer_shadow_masker(self, goniometer=None):
return GoniometerMaskerFactory.mini_kappa(goniometer)

def get_mask(self, goniometer=None):
mask = super(FormatCBFMiniPilatusDLS6MSN100, self).get_mask()
if self._dynamic_shadowing:
gonio_masker = self.get_goniometer_shadow_masker(goniometer=goniometer)
scan = self.get_scan()
detector = self.get_detector()
shadow_mask = gonio_masker.get_mask(detector, scan.get_oscillation()[0])
assert len(mask) == len(shadow_mask)
for m, sm in zip(mask, shadow_mask):
if sm is not None:
m &= sm
return mask

def _read_cbf_image(self):
from cbflib_adaptbx import uncompress
import binascii
Expand Down
3 changes: 0 additions & 3 deletions format/FormatMultiImage.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,9 +80,6 @@ def get_scan(self, index=None):
def get_raw_data(self, index=None):
raise NotImplementedError

def get_mask(self, index=None, goniometer=None):
return None

def get_detectorbase(self, index=None):
raise NotImplementedError

Expand Down
23 changes: 0 additions & 23 deletions format/FormatNexusEigerDLS16M.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import h5py
import libtbx
from scitbx.array_family import flex
from dxtbx.format.FormatNexus import FormatNexus
from dxtbx.model import MultiAxisGoniometer
from dxtbx.masking import GoniometerMaskerFactory
Expand Down Expand Up @@ -56,28 +55,6 @@ def __init__(self, image_file, **kwargs):
super(FormatNexusEigerDLS16M, self).__init__(image_file, **kwargs)
self._dynamic_shadowing = self.has_dynamic_shadowing(**kwargs)

def get_mask(self, index, goniometer=None):
mask = super(FormatNexusEigerDLS16M, self).get_mask()
if mask is None:
# XXX mask really shouldn't be None
# https://jira.diamond.ac.uk/browse/SCI-8308
mask = tuple(
flex.bool(flex.grid(reversed(panel.get_image_size())), True)
for panel in self.get_detector()
)
if self._dynamic_shadowing and self.get_scan():
gonio_masker = self.get_goniometer_shadow_masker(goniometer=goniometer)
scan = self.get_scan()
detector = self.get_detector()
shadow_mask = gonio_masker.get_mask(
detector, scan.get_angle_from_image_index(index)
)
assert len(mask) == len(shadow_mask)
for m, sm in zip(mask, shadow_mask):
if sm is not None:
m &= sm
return mask

def get_goniometer_shadow_masker(self, goniometer=None):
if not self._dynamic_shadowing:
return None
Expand Down

0 comments on commit bf2a6cf

Please sign in to comment.