def disconnect(self): for dev_id in self.device_contexts.keys(): device_context = self.device_contexts[dev_id] if device_context[CONTAINS_CS_ID_KEY]: self.release_device_context(dev_id, -1, '') TupleWrapper.forget_tuple_wrapper_instances() self.manager.set_manager_callbacks(None, None, None, None) self.manager = None del self.appointed_lom_ids del self.lom_classes
def prepare_control_surface_update(self, device_id, object_id, parameters): found_cs_references = False for dev_id in self.device_contexts.keys(): device_context = self.device_contexts[dev_id] if device_context[CONTAINS_CS_ID_KEY]: found_cs_references = True self.release_device_context(dev_id, -1, parameters) self.manager.refresh_max_device(dev_id) if found_cs_references: TupleWrapper.forget_tuple_wrapper_instances() self.appointed_lom_ids = {0: None}