Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
2222: Monitor normalisation: RuntimeError: No logfile available for this stack.

1 change: 1 addition & 0 deletions mantidimaging/core/operations/base_filter.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ class BaseFilter:
link_histograms = False
show_negative_overlay = True
operate_on_sinograms = False
allow_for_180_projection = True

SINOGRAM_FILTER_INFO = "This filter will work on a\nsinogram view of the data."

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ class MonitorNormalisation(BaseFilter):
"""
filter_name = "Monitor Normalisation"
link_histograms = True
allow_for_180_projection = False

@staticmethod
def filter_func(images: ImageStack, progress=None) -> ImageStack:
Expand Down
9 changes: 5 additions & 4 deletions mantidimaging/gui/windows/operations/presenter.py
Original file line number Diff line number Diff line change
Expand Up @@ -277,10 +277,11 @@ def _post_filter(self, updated_stacks: list[ImageStack], task):
use_new_data = self._wait_for_stack_choice(stack, stack.id)
# if the stack that was kept happened to have a proj180 stack - then apply the filter to that too
if stack.has_proj180deg() and use_new_data and not self.applying_to_all:
# Apply to proj180 synchronously - this function is already running async
# and running another async instance causes a race condition in the parallel module
# where the shared data can be removed in the middle of the operation of another operation
self._do_apply_filter_sync([stack.proj180deg])
if self.model.selected_filter.allow_for_180_projection:
# Apply to proj180 synchronously - this function is already running async
# and running another async instance causes a race condition in the parallel module
# where the shared data can be removed in the middle of the operation of another operation
self._do_apply_filter_sync([stack.proj180deg])
if np.any(stack.data < 0):
negative_stacks.append(stack)

Expand Down