diff options
Diffstat (limited to 'core/profile.py')
| -rw-r--r-- | core/profile.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/core/profile.py b/core/profile.py index 8c73b4b..1fa667a 100644 --- a/core/profile.py +++ b/core/profile.py @@ -306,6 +306,12 @@ class ProfileManager: if engine is not None: engine.remove_device(dev.info.device_id) + # Clear signal pipelines and derived channels — profile defines the + # complete set; otherwise the previous profile's leftovers stick around. + processor._pipelines.clear() + for dc in list(processor.get_derived()): + processor.remove_derived(dc.channel_id) + for dev_cfg in profile.devices: dev_type = dev_cfg.get("device_type") dev_id = dev_cfg.get("device_id") |
