From f09f4371ab3e956cf81a10b2e38924c9519f7d82 Mon Sep 17 00:00:00 2001 From: Graeme Winter Date: Thu, 27 Jul 2023 15:02:09 +0100 Subject: [PATCH 1/3] ESRF ID23-2 --- newsfragments/XXX.feature | 1 + .../FormatNXmxEigerFilewriterESRFID232.py | 34 +++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 newsfragments/XXX.feature create mode 100644 src/dxtbx/format/FormatNXmxEigerFilewriterESRFID232.py diff --git a/newsfragments/XXX.feature b/newsfragments/XXX.feature new file mode 100644 index 000000000..858c4fd8f --- /dev/null +++ b/newsfragments/XXX.feature @@ -0,0 +1 @@ +``dxtbx``: add support for Eiger 9M on ESRF ID23-2 with vertical goniometer (which is not written into the image header) \ No newline at end of file diff --git a/src/dxtbx/format/FormatNXmxEigerFilewriterESRFID232.py b/src/dxtbx/format/FormatNXmxEigerFilewriterESRFID232.py new file mode 100644 index 000000000..58d2fcb60 --- /dev/null +++ b/src/dxtbx/format/FormatNXmxEigerFilewriterESRFID232.py @@ -0,0 +1,34 @@ +from __future__ import annotations + +import re + +import h5py + +from dxtbx.format.FormatNXmxEigerFilewriter import FormatNXmxEigerFilewriter + +DATA_FILE_RE = re.compile(r"data_\d{6}") + + +class FormatNXmxEigerFilewriterESRFID232(FormatNXmxEigerFilewriter): + _cached_file_handle = None + + @staticmethod + def understand(image_file): + with h5py.File(image_file) as handle: + if "/entry/instrument/detector/detector_number" in handle: + if ( + handle["/entry/instrument/detector/detector_number"][()] + == b"E-18-0133" + ): + return True + return False + + def __init__(self, image_file, **kwargs): + """Initialise the image structure from the given file.""" + super().__init__(image_file, **kwargs) + + def _start(self): + super()._start() + + def _goniometer(self): + return self._goniometer_factory.known_axis((0, 1, 0)) From 66efd56d6e720ff9db3d7f2531bf1b5c6eb9cd25 Mon Sep 17 00:00:00 2001 From: DiamondLightSource-build-server Date: Thu, 27 Jul 2023 14:03:19 +0000 Subject: [PATCH 2/3] Rename newsfragments/XXX.feature to newsfragments/651.feature --- newsfragments/{XXX.feature => 651.feature} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename newsfragments/{XXX.feature => 651.feature} (100%) diff --git a/newsfragments/XXX.feature b/newsfragments/651.feature similarity index 100% rename from newsfragments/XXX.feature rename to newsfragments/651.feature From c70f0997bcfbbe39aa13d0f62d1eeb92eb397098 Mon Sep 17 00:00:00 2001 From: Nicholas Devenish Date: Thu, 10 Aug 2023 15:58:26 +0100 Subject: [PATCH 3/3] Update 651.feature --- newsfragments/651.feature | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/newsfragments/651.feature b/newsfragments/651.feature index 858c4fd8f..2f790c707 100644 --- a/newsfragments/651.feature +++ b/newsfragments/651.feature @@ -1 +1 @@ -``dxtbx``: add support for Eiger 9M on ESRF ID23-2 with vertical goniometer (which is not written into the image header) \ No newline at end of file +Add support for Eiger 9M on ESRF ID23-2, which has an undeclared vertical goniometer.