measurement_tools.cpython-311.pyc•14.4 kB
�
�+�h�9 � �h � d Z ddlZddlZddlZddlZddlmZmZmZm Z ddl
mZ G d� d� � ZdS )z�
Measurement tools for qudi MCP integration
Handles measurement module loading, execution, and data acquisition
through qudi's measurement framework.
� N)�Dict�List�Any�Optional� )�RunLevelc
�� � e Zd ZdZd� Zdedeeef deeef fd�Zdeeef deeef fd�Z deeef deeef fd �Z
deeef deeef fd
�Zdeeef deeef fd�Zdeeef deeef fd�Z
deeef deeef fd
�Zdefd�Zdedeeef defd�Zdedeeef dedeeef fd�ZdS )�MeasurementToolsz*Measurement execution and management toolsc �F � || _ t j d� � | _ d S )Nzqudi-mcp.measurements)�server�logging� getLogger�logger)�selfr s �_/Users/englund/Projects/QPG-MIT/qudi-iqo-modules-QPG/mcp_integration/tools/measurement_tools.py�__init__zMeasurementTools.__init__ s � �����'�(?�@�@����� �name� arguments�returnc � � K � | j | j | j | j | j | j d�}||vrdd|� �iS || |� � � d{V ��S )zRoute measurement tool calls)zmeasurement.list_moduleszmeasurement.startzmeasurement.statuszmeasurement.stopzmeasurement.get_datazmeasurement.save_data�errorzUnknown measurement tool: N)�
_list_modules�_start_measurement�_get_status�_stop_measurement� _get_data�
_save_data)r r r �tool_maps r �handle_toolzMeasurementTools.handle_tool s} � � � � )-�(:�!%�!8�"&�"2� $� 6�$(�N�%)�_�
�
�� �x����@�$�@�@�A�A�#�X�d�^�I�.�.�.�.�.�.�.�.�.r �argsc � � K � | j j t j k r=dddg d�d�dddg d �d�d
ddg d�d�d
ddg d�d�dddg d�d�g| j j j dd�S g dd�S )z"List available measurement modules�photoluminescence_scan�spectroscopyzPL spectroscopy measurement)�wavelength_start�wavelength_end�wavelength_step�integration_time�laser_power)r �type�description�
parameters�
gate_sweep� transportzGate voltage sweep measurement)�
gate_start�gate_end� gate_step�bias_voltage�measurement_time�resonance_scanzResonance frequency scan)�frequency_start�
frequency_end�frequency_step�powerr( �
time_trace�time_serieszTime-resolved measurement)�
total_time�time_resolution�trigger_source�2d_gate_map�transport_2dz2D gate voltage map)�gate1_start� gate1_end�gate1_steps�gate2_start� gate2_end�gate2_stepsr2 r( zSimulated measurement modules)�modules�runlevel�messagez+qudi measurement modules not yet integrated)rF rH )r rG r �DRY_RUN�value)r r! s r r zMeasurementTools._list_modules( s � � � � �;��8�#3�3�3� !9� .�'D�'� '� '� � � !-� +�'G�'� '� '� � � !1� .�'A�'� '� '� � � !-� -�'B�'� '� '� � � !.� .�'<�'� '� '� � �I.�^ !�K�0�6�:�c2� 2� 2
�l �D�
�
�
r c � �T K � |� d� � }|� di � � }|sddiS g }|� � � D ]P\ }}| j j � ||� � \ }}|� |||d�� � |s
d|� d|� �|d�c S �Qt
t j � � � � d d
� } | ||dt j � � dd
| �
||� � d�}
|
| j j | <