def __init__(self, *args):
        HardwareObject.__init__(self, *args)

        self._value = [None, None]
        self._min_limits = [None, None]
        self._max_limits = [None, None]
        self._status = [None, None]
示例#2
0
    def __init__(self, name):
        HardwareObject.__init__(self, name)

        self.synchrotron_name = None
        self.beamline_name = None

        self.session_id = None
        self.proposal_code = None
        self.proposal_number = None
        self.proposal_id = None
        self.in_house_users = []
        self.endstation_name = None
        self.session_start_date = None
        self.user_group = ""
        self.email_extension = None
        self.template = None

        self.default_precision = "05"
        self.suffix = None

        self.base_directory = None
        self.base_process_directory = None
        self.base_archive_directory = None

        self.raw_data_folder_name = "RAW_DATA"
        self.processed_data_folder_name = "PROCESS_DATA"
        self.archive_folder_name = "ARCHIVE"
示例#3
0
    def __init__(self, name):
        HardwareObject.__init__(self, name)

        self.diffractometer_hwobj = None
     
        self.pixels_per_mm = [0, 0]
        self.beam_size = [0, 0]
        self.beam_position = [0, 0]
        self.beam_shape = None
        self.graphics_scene_size = [0, 0]
        self.mouse_position = [0, 0] 

        self.beam_info_dict = {}
        self.omega_axis_info_dict = {}
        #self.centring_points = []
        self.centring_state = False
        self.mesh_drawing_state = False
        self.measure_state = None
        self.point_count = 0
        self.mesh_count = 0
        self.selected_centring_points = []

        self.graphics_view = None
        self.graphics_camera_frame = None
        self.graphics_beam_item = None
        self.graphics_scale_item = None
        self.graphics_omega_reference_item = None
        self.graphics_centring_lines_item = None
        self.graphics_mesh_draw_item = None
    def __init__(self, name):
        """

        :param name: name of the object
        :type name: string
        """

        AbstractCollect.__init__(self)
        HardwareObject.__init__(self, name)
        self._centring_status = None
        self._previous_collect_status = None
        self._actual_collect_status = None
        self.current_dc_parameters = None

        self.osc_id = None
        self.owner = None
        self._collecting = False
        self._error_msg = ""
        self._error_or_aborting = False
        self.collect_frame  = None
        self.ready_event = None

        self.exp_type_dict = None
        self.aborted_by_user = None 

        self.diffractometer_hwobj = None
        self.lims_client_hwobj = None
        self.machine_info_hwobj = None
        self.energy_hwobj = None
        self.resolution_hwobj = None
        self.transmission_hwobj = None
        self.detector_hwobj = None
        self.beam_info_hwobj = None
        self.autoprocessing_hwobj = None
        self.graphics_manager_hwobj = None
    def __init__(self, name):
        HardwareObject.__init__(self, name)

        self._current_position_name = None
        self._current_diameter_index = None
        self._diameter_size_list = ()
        self._position_list = ()
 def __init__(self, *args):
     """
     Description:
     """
     HardwareObject.__init__(self, *args)
     self.proxyMotor = None  # Hardware object to change motor attributes
     self.motor_name = None  # Tango name of DeviceServer controlling the motor
    def __init__(self, name):
        HardwareObject.__init__(self, name)

        self.n2level = None
        self.temp = None
        self.temp_error = None
        self.ii = 0
示例#8
0
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self._object_by_path = {}
     self._role_list = ['transmission', 'diffractometer', 'sample_changer',
                        'resolution', 'shape_history', 'session',
                        'data_analysis', 'workflow', 'lims_client',
                        'collect', 'energy']
    def __init__(self, name):
        HardwareObject.__init__(self, name)

        # Hardware objects ----------------------------------------------------
        self.collect_hwobj = None
        self.detector_hwobj = None
        self.diffractometer_hwobj = None
        self.beamstop_hwobj = None
        self.lims_hwobj = None

        # Internal variables --------------------------------------------------
        self.start_command = None
        self.kill_command = None
        self.data_collection = None
        self.grid = None
        self.params_dict = None
        self.results_name_list = ()
        self.results_raw = None
        self.results_aligned = None
        self.done_event = None
        self.started = None
        self.workflow_info = None

        self.plot_points_num = None
        self.current_grid_index = None
        self.grid_properties = []
    def init(self):
        HardwareObject.init(self)

        self.controller = self.getObjectByRole("controller")
        event.connect(self.controller.tf, "state", self._tf_state_updated)
        event.connect(self.controller.tf2, "state", self._tf_state_updated)
        self.tfCfgByName = {}
        self.coefByName = {}
        self.sizeByName = {}
        self.posNames = []

        cfg = self["lenses_config"]
        if not isinstance(cfg, list):
            cfg = [cfg]

        for lens_cfg in cfg:
            name = lens_cfg.getProperty("name")
            tf1 = lens_cfg.getProperty("tf1").split()
            tf2 = lens_cfg.getProperty("tf2").split()
            size = lens_cfg.getProperty("size")
            coef = lens_cfg.getProperty("coef")
            self.posNames.append(lens_cfg.getProperty("name"))
            self.tfCfgByName[name] = {
                "tf1": ["IN" if x else "OUT" for x in map(int, tf1)],
                "tf2": ["IN" if x else "OUT" for x in map(int, tf2)],
            }
            self.sizeByName[name] = float(size)
            self.coefByName[name] = float(coef)
    def __init__(self, name):
        HardwareObject.__init__(self, name)

        self.bl_config = BeamlineConfig(*[None] * 17)

        self._collecting = False
        self._error_msg = ""
        self.exp_type_dict = {}

        self.collection_id = None
        self.data_collect_task = None
        self.current_dc_parameters = None
        self.current_lims_sample = {}
        self.run_processing_after = None
        self.run_processing_parallel = None

        self.autoprocessing_hwobj = None
        self.beam_info_hwobj = None
        self.detector_hwobj = None
        self.diffractometer_hwobj = None
        self.energy_hwobj = None
        self.lims_client_hwobj = None
        self.machine_info__hwobj = None
        self.resolution_hwobj = None
        self.sample_changer_hwobj = None
        self.plate_manipulator_hwobj = None
        self.transmission_hwobj = None

        self.ready_event = None
    def __init__(self, name):
        """

        :param name: name of the object
        :type name: string
        """

        AbstractCollect.__init__(self)
        HardwareObject.__init__(self, name)

        self._error_msg = ""
        self.owner = None
        self.osc_id = None
        self._collecting = None

        self.diffractometer_hwobj = None
        self.omega_hwobj = None
        self.kappa_hwobj = None
        self.phi_hwobj = None
        self.lims_client_hwobj = None
        self.machine_info_hwobj = None
        self.energy_hwobj = None
        self.resolution_hwobj = None
        self.transmission_hwobj = None
        self.detector_hwobj = None
        self.beam_info_hwobj = None
        self.autoprocessing_hwobj = None
        self.graphics_manager_hwobj = None
        self.mxlocal = None

        self.helical_positions = None
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self.__translations = {}
     self.__disabled = False
     self.__test_proposal = None
     self.loginType = None
     self.base_result_url = None
    def __init__(self, name):
        """
        Descrip. :
        """
        HardwareObject.__init__(self, name)

        self.ready_event = None
        self.devices_list = None
        self.csv_file = None
        self.csv_file_name = None
        self.test_queue_dict = None
        self.comm_test = None
        self.current_test_procedure = None
        self.beamline_name = None

        self.available_tests_dict = {}
        self.startup_test_list = []
        self.results_list = None
        self.results_html_list = None
        self.arhive_results = None

        self.bl_hwobj = None
        self.beam_focus_hwobj = None
        self.graphics_manager_hwobj = None
        self.beam_align_hwobj = None
        self.test_directory = None
        self.test_source_directory = None
        self.test_filename = None
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self._drawing = None
     self._drawing_event = DrawingEvent(self)
     self.shapes = {}
     self.selected_shapes = {}
     self.point_index = 0
示例#16
0
    def __init__(self, name):
        AbstractDetector.__init__(self)
        HardwareObject.__init__(self, name)

        self.collect_name = None
        self.shutter_name = None
        self.temp_treshold = None
        self.hum_treshold = None
        self.cover_state = None

        self.chan_beam_xy = None
        self.chan_cover_state = None
        self.chan_temperature = None
        self.chan_humidity = None
        self.chan_status = None
        self.chan_roi_mode = None
        self.chan_frame_rate = None
        self.chan_actual_frame_rate = None

        self.cmd_close_cover = None
        self.cmd_restart_daq = None
        self.binding_mode = 1
        self.tolerance = None
        self.temperature = None
        self.humidity = None
        self.actual_frame_rate = None
    def __init__(self, name):
	HardwareObject.__init__(self, name)
        """
        Descript. : 
        """
        #Parameters
        self.update_interval = None  
        self.limits_dict =  None
        self.hutch_temp_addr = None
        self.hutch_hum_addr = None
	#Intensity current ranges
        self.values_dict = {}
        self.values_dict['current'] = None
        self.values_dict['stateText'] = ""
        self.values_dict['flux'] = None
        self.values_dict['cryo'] = None
        #Dictionary for booleans indicating if values are in range
        self.values_in_range_dict = {}
        self.values_in_range_dict['current'] = None
        self.values_in_range_dict['cryo'] = None
        self.values_in_range_dict['flux'] = True
        self.temp_hum_values = [None, None]
        self.temp_hum_in_range = [None, None]
        self.temp_hum_polling = None

        self.chan_mach_curr = None
        self.chan_state_text = None
        self.chan_cryojet_in = None
    def __init__(self, name):
        HardwareObject.__init__(self, name)

        # Py4J gateway to external workflow program
        self._gateway = None

        # ID for current workflow calculation
        self._enactment_id = None

        # Name of workflow being executed.
        self._workflow_name = None

        # Queue for communicating with MXCuBE HardwareObject
        self.workflow_queue = None
        self._await_result = None
        self._running_process = None
        self.collect_emulator_process = None

        self._state = States.OFF

        # py4j connection parameters
        self._connection_parameters = {}

        # Paths to executables and software locations
        self.software_paths = {}
        # Properties for GPhL invocation
        self.java_properties = {}
示例#19
0
    def __init__(self, name):

        AbstractEnergyScan.__init__(self)
        HardwareObject.__init__(self, name)
        self._tunable_bl = True

        self.status = None
        self.startup_done = False
        self.ready_event = None
        self.scanning = False
        self.energy_motor = None
        self.th_edge = None
        self.scan_directory = None
        self.scan_data = None
        self.scan_prefix = None
        self.num_points = None
        self.scan_info = None
        self.chooch_cmd = None

        self.energy_hwobj = None
        self.db_connection_hwobj = None
        self.transmission_hwobj = None
        self.beam_info_hwobj = None

        self.chan_scan_start = None
        self.chan_scan_status = None
        self.chan_scan_error = None

        self.cmd_scan_abort = None
        self.cmd_adjust_transmission = False
        self.cmd_set_max_transmission = False
    def __init__(self, name):
        HardwareObject.__init__(self, name)
        self.__disabled = False
        self.__test_proposal = None
        self.__translations = {}
        self.__rest_root = None
        self.__rest_username = None
        self.__rest_token = None
        self.__rest_token_timestamp = None 

        self.__test_proposal = {'status': {'code': 'ok'},
                'Person': {'personId': 1,
                           'laboratoryId': 1,
                           'login': None,
                           'familyName':'operator on IDTESTeh1'},
                'Proposal': {'code': 'idtest',
                             'title': 'operator on IDTESTeh1',
                             'personId': 1,
                             'number': '000',
                             'proposalId': 1,
                             'type': 'MX'},
                'Session': [{'scheduled': 0,
                             'startDate': '2013-06-11 00:00:00',
                             'endDate': '2013-06-12 07:59:59',
                             'beamlineName': 'ID:TEST',
                             'timeStamp': datetime(2013, 6, 11, 9, 40, 36),
                             'comments': 'Session created by the BCM',
                             'sessionId': 34591,
                             'proposalId': 1, 'nbShifts': 3}],
                'Laboratory': {'laboratoryId': 1,
                               'name': 'TEST eh1'}}
    def __init__(self, name):
        """
        Descrip. :
        """
        HardwareObject.__init__(self, name)

        self.ready_event = None
        self.devices_list = None
        self.csv_file = None
        self.csv_file_name = None
        self.test_queue_dict = None
        self.comm_test = None
        self.current_test_procedure = None
        self.beamline_name = None
        self.test_directory = None
        self.test_source_directory = None
        self.test_filename = None

        self.scale_hor = None
        self.scale_ver = None
        self.scan_status = None

        self.available_tests_dict = {}
        self.startup_test_list = []
        self.results_list = None
        self.results_html_list = None
        self.arhive_results = None
        self.graph_values = [[], []]

        self.chan_pitch_scan_status = None
        self.cmd_start_pitch_scan = None
        self.cmd_set_vmax_pitch = None

        self.bl_hwobj = None
        self.crl_hwobj = None
        self.beam_focusing_hwobj = None
        self.graphics_manager_hwobj = None
        self.horizontal_motor_hwobj = None
        self.vertical_motor_hwobj = None
        self.graphics_manager_hwobj = None

        self.diode_calibration_amp_per_watt = interp1d(\
              [4., 6., 8., 10., 12., 12.5, 15., 16., 20., 30.], 
              [0.2267, 0.2116, 0.1405, 0.086, 0.0484, 0.0469,
               0.0289, 0.0240, 0.01248, 0.00388])

        self.air_absorption_coeff_per_meter = interp1d(\
               [4., 6.6, 9.2, 11.8, 14.4, 17., 19.6, 22.2, 24.8, 27.4, 30],
               [9.19440446, 2.0317802, 0.73628084, 0.34554261,
                0.19176669, 0.12030697, 0.08331135, 0.06203213,
                0.04926173,  0.04114024, 0.0357374 ])
        self.carbon_window_transmission = interp1d(\
               [4., 6.6, 9.2, 11.8, 14.4, 17., 19.6, 22.2, 24.8, 27.4, 30],
               [0.74141, 0.93863, 0.97775, 0.98946, 0.99396,
                0.99599, 0.99701, 0.99759, 0.99793, 0.99815, 0.99828])
        self.dose_rate_per_10to14_ph_per_mmsq = interp1d(\
               [4., 6.6, 9.2, 11.8, 14.4, 17., 19.6, 22.2, 24.8, 27.4, 30.0],
               [459000., 162000., 79000., 45700., 29300., 20200.,
                14600., 11100., 8610., 6870., 5520.])
示例#22
0
    def __init__(self, name, detector, tunable_bl):
        AbstractMultiCollect.__init__(self)
        HardwareObject.__init__(self, name)
        self._detector        = detector
        self._tunable_bl      = tunable_bl
        self._centring_status = None

        self.image_file_format = "%(prefix)s_%(run_number)s_%%03d.%(suffix)s"
 def __init__(self, name):
     """
     Descript. :
     """
     HardwareObject.__init__(self, name)
     self.result = None
     self.autoproc_programs = None
     self.current_autoproc_procedure = None
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self._state = State(self)
     self._command_failed = False
     self._besWorkflowId = None 
     self._gevent_event = None
     self._bes_host = None
     self._bes_port = None
示例#25
0
    def __init__(self, name):
        HardwareObject.__init__(self, name)   

        self.crl_value = None
        self.chan_crl_value = None
        self.cmd_set_crl_value = None
        self.cmd_set_trans_value = None
        self.energy_hwobj = None
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self.__disabled = False
     self.__test_proposal = None
     self.__translations = {}
     self.__rest_root = None
     self.__rest_username = None
     self.__rest_token = None
     self.__rest_token_timestamp = None 
 def __init__(self, name, detector, tunable_bl):
     AbstractMultiCollect.__init__(self)
     HardwareObject.__init__(self, name)
     self._detector = detector
     self._tunable_bl = tunable_bl
     self._centring_status = None
     self._metadataClient = None
     self.__mesh_steps = None
     self._mesh_range = None
示例#28
0
文件: Queue.py 项目: alexgobbo/mxcube
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     QueueEntryContainer.__init__(self)
     self._root_task = None
     self._paused_event = gevent.event.Event()
     self._paused_event.set()
     self._current_queue_entry = None
     self._running = False
     self._disable_collect = False
示例#29
0
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self.queue_model_hwobj = None
     self.queue_hwobj = None
     self.beamline_setup_hwobj = None
     self.wokflow_in_progress = True
     self.xmlrpc_prefixes = set()
     self.current_entry_task = None
     self.host = None
    def __init__(self, name):
        """
        Descrip. :
        """
        HardwareObject.__init__(self, name)

        self.default_size = None
        self.default_distance = None
        self.default_direction = None 
 def __init__(self, name):
     AbstractXRFSpectrum.__init__(self)
     HardwareObject.__init__(self, name)
    def __init__(self, name):
        HardwareObject.__init__(self, name)

        self.door_interlock_state = None
示例#33
0
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self.kafka_server = None
     self.session_hwobj = None
     self.topic = ""
示例#34
0
    def __init__(self, name):
        HardwareObject.__init__(self, name)

        self.ready_event = None
        self.devices_list = None
        self.csv_file = None
        self.csv_file_name = None
        self.test_queue_dict = None
        self.comm_test = None
        self.current_test_procedure = None
        self.beamline_name = None
        self.test_directory = None
        self.test_source_directory = None
        self.test_filename = None

        self.scale_hor = None
        self.scale_ver = None
        self.scan_status = None

        self.available_tests_dict = {}
        self.startup_test_list = []
        self.results_list = None
        self.results_html_list = None
        self.graph_values = [[], []]
        self.intensity_measurements = []
        self.ampl_chan_index = None
        self.intensity_ranges = []
        self.intensity_value = None

        self.chan_pitch_scan_status = None
        self.chan_intens_range = None
        self.chan_intens_mean = None
        self.cmd_start_pitch_scan = None
        self.cmd_set_vmax_pitch = None
        self.cmd_set_intens_acq_time = None
        self.cmd_set_intens_range = None
        self.cmd_set_intens_resolution = None

        self.bl_hwobj = None
        self.crl_hwobj = None
        self.beam_focusing_hwobj = None
        self.graphics_manager_hwobj = None
        self.horizontal_motor_hwobj = None
        self.vertical_motor_hwobj = None
        self.graphics_manager_hwobj = None

        self.diode_calibration_amp_per_watt = interp1d(\
              [4., 6., 8., 10., 12., 12.5, 15., 16., 20., 30.],
              [0.2267, 0.2116, 0.1405, 0.086, 0.0484, 0.0469,
               0.0289, 0.0240, 0.01248, 0.00388])

        self.air_absorption_coeff_per_meter = interp1d(\
               [4., 6.6, 9.2, 11.8, 14.4, 17., 19.6, 22.2, 24.8, 27.4, 30],
               [9.19440446, 2.0317802, 0.73628084, 0.34554261,
                0.19176669, 0.12030697, 0.08331135, 0.06203213,
                0.04926173, 0.04114024, 0.0357374])
        self.carbon_window_transmission = interp1d(\
               [4., 6.6, 9.2, 11.8, 14.4, 17., 19.6, 22.2, 24.8, 27.4, 30],
               [0.74141, 0.93863, 0.97775, 0.98946, 0.99396,
                0.99599, 0.99701, 0.99759, 0.99793, 0.99815, 0.99828])
        self.dose_rate_per_10to14_ph_per_mmsq = interp1d(\
               [4., 6.6, 9.2, 11.8, 14.4, 17., 19.6, 22.2, 24.8, 27.4, 30.0],
               [459000., 162000., 79000., 45700., 29300., 20200.,
                14600., 11100., 8610., 6870., 5520.])
示例#35
0
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self._drawing = None
     self.shapes = {}
     self.selected_shapes = {}
     self.point_index = 0
    def __init__(self, name):
        HardwareObject.__init__(self, name)

        # Hardware objects ----------------------------------------------------
        self.motor_hwobj_dict = {}
        self.centring_motors_list = None
        self.front_light_switch = None
        self.back_light_switch = None
        self.aperture = None
        self.beamstop = None
        self.cryo = None
        self.capillary = None
        self.use_sc = False

        # Channels and commands -----------------------------------------------
        self.channel_dict = {}
        self.used_channels_list = []
        self.command_dict = {}
        self.used_commands_list = []

        # flag for using sample_centring hwobj or not
        self.use_sample_centring = None

        # time to delay for state polling for controllers
        # not updating state inmediately after cmd started
        self.delay_state_polling = None

        self.delay_state_polling = (
            None
        )  # time to delay for state polling for controllers
        # not updating state inmediately after cmd started

        # Internal values -----------------------------------------------------
        self.ready_event = None
        self.head_type = GenericDiffractometer.HEAD_TYPE_MINIKAPPA
        self.phase_list = []
        self.grid_direction = None
        self.reversing_rotation = None

        self.beam_position = None
        self.zoom_centre = None
        self.pixels_per_mm_x = None
        self.pixels_per_mm_y = None

        self.current_state = None
        self.current_phase = None
        self.transfer_mode = None
        self.current_centring_procedure = None
        self.current_centring_method = None
        self.current_motor_positions = {}
        self.current_motor_states = {}

        self.fast_shutter_is_open = None
        self.centring_status = {"valid": False}
        self.centring_time = 0
        self.user_confirms_centring = None
        self.user_clicked_event = None
        self.automatic_centring_try_count = 1
        self.omega_reference_par = None
        self.move_to_motors_positions_task = None
        self.move_to_motors_positions_procedure = None

        self.centring_methods = {
            GenericDiffractometer.CENTRING_METHOD_MANUAL: self.start_manual_centring,
            GenericDiffractometer.CENTRING_METHOD_AUTO: self.start_automatic_centring,
            GenericDiffractometer.CENTRING_METHOD_MOVE_TO_BEAM: self.start_move_to_beam,
        }

        self.connect(self, "equipmentReady", self.equipment_ready)
        self.connect(self, "equipmentNotReady", self.equipment_not_ready)
示例#37
0
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self.result = None
     self.autoproc_programs = None
     self.current_autoproc_procedure = None
示例#38
0
 def __init__(self, name):
     HardwareObject.__init__(self, name)
示例#39
0
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self.result = None
     self.autoproc_programs = []
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self.__translations = {}
     self.__disabled = False
     self.__test_proposal = None
     self.loginType = None
示例#41
0
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self.__translations = {}
     self.__disabled = False
示例#42
0
    def __init__(self, name):
        HardwareObject.__init__(self, name)

        self.temp = None
        self.temp_error = None
    def __init__(self, name):
        HardwareObject.__init__(self, name)

        # Hardware objects ----------------------------------------------------
        self.motor_hwobj_dict = {}
        self.centring_motors_list = None
        self.front_light_switch = None
        self.back_light_switch = None
        self.camera_hwobj = None
        self.beam_info_hwobj = None
        self.sample_changer = None
        self.use_sc = False

        # Channels and commands -----------------------------------------------
        self.channel_dict = {}
        self.used_channels_list = GenericDiffractometer.CHANNELS_NAME
        self.command_dict = {}
        self.used_commands_list = GenericDiffractometer.COMMANDS_NAME

        # flag for using sample_centring hwobj or not
        self.use_sample_centring = None

        # Internal values -----------------------------------------------------
        self.ready_event = None
        self.head_type = GenericDiffractometer.HEAD_TYPE_MINIKAPPA
        self.phase_list = []
        self.grid_direction = None
        self.reversing_rotation = None

        self.beam_position = None
        self.zoom_centre = None
        self.pixels_per_mm_x = None
        self.pixels_per_mm_y = None
        self.image_width = None
        self.image_height = None

        self.current_state = None
        self.current_phase = None
        self.transfer_mode = None
        self.current_centring_procedure = None
        self.current_centring_method = None
        self.current_motor_positions = {}
        self.current_motor_states = {}

        self.fast_shutter_is_open = None
        self.centring_status = {"valid": False}
        self.centring_time = 0
        self.user_confirms_centring = None
        self.user_clicked_event = None
        self.automatic_centring_try_count = 1
        self.omega_reference_par = None
        self.move_to_motors_positions_task = None
        self.move_to_motors_positions_procedure = None

        self.centring_methods = {
             GenericDiffractometer.CENTRING_METHOD_MANUAL: \
                 self.start_manual_centring,
             GenericDiffractometer.CENTRING_METHOD_AUTO: \
                 self.start_automatic_centring,
             GenericDiffractometer.CENTRING_METHOD_MOVE_TO_BEAM: \
                 self.start_move_to_beam}

        self.connect(self, 'equipmentReady', self.equipment_ready)
        self.connect(self, 'equipmentNotReady', self.equipment_not_ready)
示例#44
0
 def __init__(self, name, tunable_bl):
     AbstractEnergyScan.__init__(self)
     HardwareObject.__init__(self, name)
     self._tunable_bl = tunable_bl
示例#45
0
 def __init__(self, *args):
     HardwareObject.__init__(self, *args)
示例#46
0
 def __init__(self, name, detector, tunable_bl):
     AbstractMultiCollect.__init__(self)
     HardwareObject.__init__(self, name)
     self._detector = detector
     self._tunable_bl = tunable_bl
     self._centring_status = None
示例#47
0
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self.collect_obj = None
     self.result = None
     self.edna_processing_thread = None
     self.processing_done_event = gevent.event.Event()
示例#48
0
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self._object_by_path = {}
     self._plate_mode = False
示例#49
0
 def __init__(self, name):
     """
     Descript. :
     """
     AbstractDetector.__init__(self)
     HardwareObject.__init__(self, name)
示例#50
0
 def __init__(self, name):
     """
     Descrip. :
     """
     HardwareObject.__init__(self, name)
     self.tools_list = []
    def __init__(self, name):
        """__init__"""
        HardwareObject.__init__(self, name)
        #Parameters
        self.update_interval = None
        self.limits_dict = None
        self.hutch_temp_addr = None
        self.hutch_hum_addr = None
        self.hutch_temp = 0
        self.hutch_hum = 0
        self.overflow_alarm = None
        self.low_level_alarm = None
        self.state_text = ""
        self.ring_energy = None
        self.bunch_count = None
        self.flux_area = None
        self.last_transmission = None

        #Intensity current ranges
        self.values_list = []
        temp_dict = {}
        temp_dict['value'] = 0
        temp_dict['value_str'] = ""
        temp_dict['in_range'] = False
        temp_dict['title'] = "Machine current"
        temp_dict['bold'] = True
        temp_dict['font'] = 14
        #temp_dict['history'] = True
        self.values_list.append(temp_dict)

        temp_dict = {}
        temp_dict['value'] = None
        temp_dict['in_range'] = True
        temp_dict['title'] = "Machine state"
        self.values_list.append(temp_dict)

        temp_dict = {}
        temp_dict['value'] = ""
        temp_dict['value_str'] = ""
        temp_dict['in_range'] = None
        temp_dict['title'] = "Hutch temperature and humidity"
        self.values_list.append(temp_dict)

        temp_dict = {}
        temp_dict['value'] = 1
        temp_dict['value_str'] = "Remeasure flux!"
        temp_dict['in_range'] = False
        temp_dict['title'] = "Flux"
        temp_dict['align'] = "left"
        self.values_list.append(temp_dict)

        temp_dict = {}
        temp_dict['value'] = "???"
        temp_dict['in_range'] = None
        temp_dict['title'] = "Cryoject in place"
        self.values_list.append(temp_dict)

        temp_dict = {}
        temp_dict['value'] = "Dewar level in range"
        temp_dict['in_range'] = True
        temp_dict['title'] = "Sample changer"
        self.values_list.append(temp_dict)

        temp_dict = {}
        temp_dict['value'] = ""
        temp_dict['in_range'] = False
        temp_dict['title'] = ""
        self.values_list.append(temp_dict)

        self.temp_hum_values = [None, None]
        self.temp_hum_in_range = [None, None]
        self.temp_hum_polling = None

        self.chan_mach_curr = None
        self.chan_mach_energy = None
        self.chan_bunch_count = None
        self.chan_state_text = None
        self.chan_cryojet_in = None
        self.chan_sc_dewar_low_level_alarm = None
        self.chan_sc_dewar_overflow_alarm = None

        self.flux_hwobj = None
        self.ppu_control_hwobj = None
示例#52
0
    def __init__(self, *args):
        """
        Description:
        """
        HardwareObject.__init__(self, *args)

        qmo.CentredPosition.set_diffractometer_motor_names(
            "phi", "focus", "phiz", "phiy", "zoom", "sampx", "sampy", "beam_x", "beam_y"
        )

        # Hardware objects ----------------------------------------------------
        self.phi_motor_hwobj = None
        self.phiz_motor_hwobj = None
        self.phiy_motor_hwobj = None
        self.zoom_motor_hwobj = None
        self.sample_x_motor_hwobj = None
        self.sample_y_motor_hwobj = None
        self.focus_motor_hwobj = None
        self.omega_reference_motor = None
        self.centring_hwobj = None
        self.minikappa_correction_hwobj = None

        # Channels and commands -----------------------------------------------
        self.chan_calib_x = None
        self.chan_calib_y = None

        # self.chan_head_type = None
        print("PP__:  Attention, chan_head_type is commented out")

        self.chan_fast_shutter_is_open = None
        self.chan_sync_move_motors = None
        self.cmd_start_set_phase = None
        self.cmd_start_auto_focus = None

        # Internal values -----------------------------------------------------
        self.beam_position = None
        self.zoom_centre = None
        self.pixels_per_mm_x = None
        self.pixels_per_mm_y = None

        self.current_sample_info = None
        self.cancel_centring_methods = None
        self.current_centring_procedure = None
        self.current_centring_method = None
        self.current_positions_dict = None
        self.current_state_dict = None
        self.current_phase = None
        self.fast_shutter_is_open = None
        self.head_type = None
        self.centring_methods = None
        self.centring_status = None
        self.centring_time = None
        self.user_confirms_centring = None
        self.user_clicked_event = None
        self.omega_reference_par = None
        self.move_to_motors_positions_task = None
        self.move_to_motors_positions_procedure = None
        self.ready_event = None
        self.in_collection = None
        self.phase_list = []
        self.reference_pos = None

        self.connect(self, "equipmentReady", self.equipmentReady)
        self.connect(self, "equipmentNotReady", self.equipmentNotReady)
示例#53
0
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self._drawing = None
     self._drawing_event = DrawingEvent(self)
     self.shapes = {}
     self.selected_shapes = {}
示例#54
0
    def __init__(self, name):

        HardwareObject.__init__(self, name)

        self.pss = None
        self.shutter = None
 def __init__(self, name):
     AbstractEnergyScan.__init__(self)
     HardwareObject.__init__(self, name)
示例#56
0
 def __init__(self, name):
     AbstractMCA.__init__(self)
     HardwareObject.__init__(self, name)
     self.mca = None
     self.calib_cf = []
 def __init__(self, name):
     AbstractMultiCollect.__init__(self)
     HardwareObject.__init__(self, name)
     self._centring_status = None
     self.ready_event = None
     self.actual_frame_num = 0
示例#58
0
 def __init__(self, name):
     HardwareObject.__init__(self, name)
     self.shapes = {}
    def __init__(self, name):
        """OrderedDict is used to have a sorted items for display
           and directory like access when updating values
        """

        HardwareObject.__init__(self, name)

        self.update_interval = None
        self.limits_dict = None
        self.hutch_temp_addr = None
        self.hutch_hum_addr = None
        self.hutch_temp = 0
        self.hutch_hum = 0
        self.overflow_alarm = None
        self.low_level_alarm = None
        self.state_text = ""
        self.ring_energy = None
        self.bunch_count = None
        self.flux_area = None
        self.last_transmission = None
        self.frontend_is_open = False
        self.undulator_gap = 9999

        self.values_ordered_dict = OrderedDict()

        self.values_ordered_dict["current"] = {
            "value": 0,
            "value_str": "",
            "in_range": False,
            "title": "Machine current",
            "bold": True,
        }

        self.values_ordered_dict["machine_state"] = {
            "value": None,
            "in_range": False,
            "title": "Machine state",
        }

        self.values_ordered_dict["frontend_undulator"] = {
            "value": None,
            "in_range": True,
            "title": "Front End, undulator gap",
        }

        self.values_ordered_dict["temp_hum"] = {
            "value": "",
            "value_str": "",
            "in_range": None,
            "title": "Hutch temperature and humidity",
        }

        self.temp_hum_values = [None, None]
        self.temp_hum_in_range = [None, None]
        self.temp_hum_polling = None

        self.chan_mach_curr = None
        self.chan_mach_energy = None
        self.chan_bunch_count = None
        self.chan_frontend_status = None
        self.chan_undulator_gap = None
        self.chan_state_text = None
        self.chan_cryojet_in = None
        self.chan_sc_dewar_low_level_alarm = None
        self.chan_sc_dewar_overflow_alarm = None
 def __init__(self, *args):
     """
     Descrip. :
     """
     HardwareObject.__init__(self, *args)
     self.exporter_client = None