From 0a7f5ffd4833e28e8d23a893122ed745dd044dfa Mon Sep 17 00:00:00 2001 From: David Hammer <dhammer@mailbox.org> Date: Wed, 18 Sep 2024 14:03:36 +0200 Subject: [PATCH] Fix arbiter geometry stuff --- src/calng/FrameSelectionArbiter.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/calng/FrameSelectionArbiter.py b/src/calng/FrameSelectionArbiter.py index b34a660f..5b7ffed6 100644 --- a/src/calng/FrameSelectionArbiter.py +++ b/src/calng/FrameSelectionArbiter.py @@ -144,9 +144,6 @@ class BaseFrameSelectionArbiter(TrainMatcher.TrainMatcher): ) self._geometry = None - geom_utils.subscribe_to_geometry_bound( - self, self.get("geometryDevice"), on_geometry=self._on_geometry - ) def _guess_number_of_frames(self, sources): # TODO: robust frame deduction @@ -184,6 +181,9 @@ class SimpleFrameSelectionArbiter(BaseFrameSelectionArbiter): self._initialize_kernel( self["frameSelection.kernelChoice"], self["frameSelection.kernelParameters"] ) + geom_utils.subscribe_to_geometry_bound( + self, self.get("geometryDevice"), on_geometry=self._on_geometry + ) if self["state"] != State.ERROR: self.start() # Auto-start this type of matcher. @@ -307,6 +307,9 @@ class AdvancedFrameSelectionArbiter(BaseFrameSelectionArbiter): self._validate_plan_and_update_schema(self["frameSelection.plan"]) self._initialize_kernels() self._configure_decision(self["frameSelection.decision"]) + geom_utils.subscribe_to_geometry_bound( + self, self.get("geometryDevice"), on_geometry=self._on_geometry + ) if self["state"] != State.ERROR: self.start() # Auto-start this type of matcher. @@ -517,5 +520,5 @@ class AdvancedFrameSelectionArbiter(BaseFrameSelectionArbiter): kernel.reconfigure(conf[kernel_prefix]) def _on_geometry(self, geometry): - for kernel in self._selection_kernels.values() + for kernel in self._selection_kernels.values(): kernel.on_new_geometry(geometry) -- GitLab