o
    ip                     @   sR   d Z ddlZddlZddlmZ ejeje	dZ
dd Zdd Zd	d
 ZdS )zT Jottings to work out format for __function_workspace__ matrix at end
of mat file.

    N)MatFile5Readerdatac                 C   s   |    dg i}d}|  sL|  \}}|jd u rdn|jd}|dkr-d| }|d7 }| j|dd	}| j| |||< |jrH|d 	| |  r|S )
N__globals__r   Nonelatin1 zvar_%d   F)process)
Zinitialize_readZend_of_streamZread_var_headernamedecodeZread_var_array
mat_streamseek	is_globalappend)rdrmdictihdrZnext_positionr
   res r   ^/home/kim/smarthome/.venv/lib/python3.10/site-packages/scipy/io/matlab/tests/test_mio_funcs.pyread_minimat_vars   s    r   c                 C   s   t | d}t|dd}| }|d }t| }|d ||_|jd}|dkr.dp/d|_	|jd	 t
|}|  |S )
NrbT)Zstruct_as_recordZ__function_workspace__   s   IM<>   )openr   Zget_variablesioBytesIOtobytesr   r   readZ
byte_orderr   close)fnamefpr   varsfwsZws_bsmir   r   r   r   read_workspace_vars   s   

r(   c                  C   s   t jtd} t|  d S )Nzparabola.mat)ospathjointest_data_pathr(   )r#   r   r   r   test_jottings0   s   r-   )__doc__Zos.pathr)   r   Zscipy.io.matlab._mio5r   r*   r+   dirname__file__r,   r   r(   r-   r   r   r   r   <module>   s    