コード例 #1
0
    def _initSCContents(self):
        """
        Descript. : Initializes content of plate.
        """
        if self.num_rows is None:
            return
        self._setInfo(False, None, False)
        self._clearComponents()
        for row in range(self.num_rows):
            # row is like a basket
            basket = Container.Basket(self, row + 1, samples_num=0, name="Row")
            present = True
            datamatrix = ""
            scanned = False
            basket._setInfo(present, datamatrix, scanned)
            self._addComponent(basket)

            for col in range(self.num_cols):
                cell = Cell(basket, chr(65 + row), col + 1, self.num_drops)
                basket._addComponent(cell)
コード例 #2
0
    def init(self):
        self._selected_sample = -1
        self._selected_basket = -1
        self._scIsCharging = None

        self.no_of_baskets = self.getProperty(
            "no_of_baskets", SampleChangerMockup.NO_OF_BASKETS)

        self.no_of_samples_in_basket = self.getProperty(
            "no_of_samples_in_basket",
            SampleChangerMockup.NO_OF_SAMPLES_IN_BASKET)

        for i in range(self.no_of_baskets):
            basket = Container.Basket(self,
                                      i + 1,
                                      samples_num=self.no_of_samples_in_basket)
            self._add_component(basket)

        self._init_sc_contents()
        self.signal_wait_task = None
        AbstractSampleChanger.SampleChanger.init(self)

        self.log_filename = self.getProperty("log_filename")
コード例 #3
0
    def init(self):
        self._puck_switches = 0
        self._num_basket = self.getProperty("numBaskets")
        if not self._num_basket:
            self._num_basket = 17

        for i in range(self._num_basket):
            basket = Container.Basket(self, i + 1)
            self._add_component(basket)

        self.chan_mounted_sample_puck = self.get_channel_object(
            "chanMountedSamplePuck")
        self.chan_mounted_sample_puck.connectSignal(
            "update", self.mounted_sample_puck_changed)

        self.chan_process_step_info = self.get_channel_object(
            "chanProcessStepInfo", optional=True)
        if self.chan_process_step_info is not None:
            self.chan_process_step_info.connectSignal(
                "update", self.process_step_info_changed)

        self.chan_command_list = self.get_channel_object("chanCommandList",
                                                         optional=True)
        if self.chan_command_list is not None:
            self.chan_command_list.connectSignal("update",
                                                 self.command_list_changed)

        self.chan_puck_switches = self.get_channel_object("chanPuckSwitches")
        self.chan_puck_switches.connectSignal("update",
                                              self.puck_switches_changed)

        self.chan_status = self.get_channel_object("chanStatusList")
        self.chan_status.connectSignal("update", self.status_list_changed)

        self.chan_sample_is_loaded = self.get_channel_object(
            "chanSampleIsLoaded")
        self.chan_sample_is_loaded.connectSignal("update",
                                                 self.sample_is_loaded_changed)

        self.chan_veto = self.get_channel_object("chanVeto", optional=True)
        if self.chan_veto is not None:
            self.chan_veto.connectSignal("update", self.veto_changed)

        self.cmd_mount_sample = self.get_command_object("cmdMountSample")
        self.cmd_unmount_sample = self.get_command_object("cmdUnmountSample")
        self.cmd_open_lid = self.get_command_object("cmdOpenLid")
        self.cmd_close_lid = self.get_command_object("cmdCloseLid")
        self.cmd_base_to_center = self.get_command_object("cmdBaseToCenter")
        self.cmd_center_to_base = self.get_command_object("cmdCenterToBase")
        self.cmd_dry_gripper = self.get_command_object("cmdDryGripper")

        self.beam_focusing_hwobj = self.getObjectByRole("beam_focusing")
        if self.beam_focusing_hwobj is not None:
            self.connect(self.beam_focusing_hwobj, "focusingModeChanged",
                         self.focusing_mode_changed)
            self._focusing_mode, beam_size = self.beam_focusing_hwobj.get_active_focus_mode(
            )
            self.focusing_mode_changed(self._focusing_mode, beam_size)
        else:
            self._focusing_mode = "P13mode"

        self._init_sc_contents()
        self._update_state()
        self._updateSCContents()
        self._update_loaded_sample()

        self.log_filename = self.getProperty("log_filename")
        if self.log_filename is None:
            self.log_filename = os.path.join(tempfile.gettempdir(), "mxcube",
                                             "marvin.log")
        logging.getLogger("HWR").debug("Marvin log filename: %s" %
                                       self.log_filename)
        AbstractSampleChanger.SampleChanger.init(self)

        self._set_state(AbstractSampleChanger.SampleChangerState.Ready)
        self.status_list_changed(self.chan_status.getValue())
        self.puck_switches_changed(self.chan_puck_switches.getValue())
        self.mounted_sample_puck_changed(
            self.chan_mounted_sample_puck.getValue())
        self.sample_is_loaded_changed(self.chan_sample_is_loaded.getValue())