o
    ex¯g  ã                   @   s6   d Z 	 ddlmZ ddlZddlZG dd„ deƒZdS )zYLCM type definitions
This file automatically generated by lcm.
DO NOT MODIFY BY HAND!!!!
é    )ÚBytesIONc                   @   s~   e Zd Zg d¢Zg d¢Zg d¢Zdd„ Zdd„ Zdd	„ Ze	d
e
fdd„ƒZe	dd„ ƒZe	dd„ ƒZdZe	dd„ ƒZdd„ ZdS )Úoctans_t)ÚheaderÚ
uptime_secÚsync_cntÚparse_err_cntÚrx_connectedÚroll_degÚ	pitch_degÚheading_degÚroll_deg_secÚpitch_deg_secÚheading_deg_secÚx_meters_sec2Úy_meters_sec2Úz_meters_sec2Ústatus)zoi.lcm_header_tÚdoubleÚint64_tr   Úbooleanr   r   r   r   r   r   r   r   r   Úbyte)NNNNNNNNNNNNNNNc                 C   s~   t  ¡ | _	 d| _	 d| _	 d| _	 d| _	 d| _	 d| _	 d| _		 d| _
	 d| _	 d| _	 d| _	 d| _	 d| _	 d| _d S )Ng        r   F)ÚoiÚlcm_header_tr   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   ©Úself© r   úf/mbari/ProjectLibrary/901101_OceanImaging/2025 Scoping Study/2 Studies/LCM_DataAnalysis/oi/octans_t.pyÚ__init__   s<   
zoctans_t.__init__c                 C   s&   t ƒ }| t ¡ ¡ |  |¡ | ¡ S )N)r   Úwriter   Ú_get_packed_fingerprintÚ_encode_oneÚgetvalue©r   Úbufr   r   r   ÚencodeF   s   
zoctans_t.encodec                 C   sp   | j  ¡ tj ¡ ksJ ‚| j  |¡ | t d| j| j	| j
| j| j| j| j| j| j| j| j| j| j| j¡¡ d S )Nz>dqqbdddddddddB)r   r   r   r   r    r   ÚstructÚpackr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r"   r   r   r   r    L   s   Lzoctans_t._encode_oneÚdatac                 C   s<   t | dƒr| }nt| ƒ}| d¡t ¡ krtdƒ‚t |¡S )NÚreadé   zDecode error)Úhasattrr   r(   r   r   Ú
ValueErrorÚ_decode_one)r'   r#   r   r   r   ÚdecodeQ   s   

zoctans_t.decodec                 C   sŒ   t ƒ }tj | ¡|_t d|  d¡¡\|_|_	|_
tt d|  d¡¡d ƒ|_t d|  d¡¡\
|_|_|_|_|_|_|_|_|_|_|S )Nz>dqqé   Úbé   r   z>dddddddddBéI   )r   r   r   r,   r   r%   Úunpackr(   r   r   r   Úboolr   r	   r
   r   r   r   r   r   r   r   r   )r#   r   r   r   r   r,   [   s   :zoctans_t._decode_onec                 C   sF   t | v rdS | t g }dtj |¡ d@ }|d> d@ |d?  d@ }|S )Nr   l   6q€:ˆD l   ÿÿÿÿ r0   é?   )r   r   r   Ú_get_hash_recursive)ÚparentsÚ
newparentsÚtmphashr   r   r   r5   d   s
   
zoctans_t._get_hash_recursiveNc                   C   s$   t jd u rt dt  g ¡¡t _t jS )Nú>Q)r   Ú_packed_fingerprintr%   r&   r5   r   r   r   r   r   m   s   
z octans_t._get_packed_fingerprintc                 C   s   t  dt ¡ ¡d S )zGet the LCM hash of the structr9   r   )r%   r2   r   r   r   r   r   r   Úget_hashs   s   zoctans_t.get_hash)Ú__name__Ú
__module__Ú__qualname__Ú	__slots__Ú__typenames__Ú__dimensions__r   r$   r    ÚstaticmethodÚbytesr-   r,   r5   r:   r   r;   r   r   r   r   r      s"    ,	


r   )Ú__doc__Úior   r%   r   Úobjectr   r   r   r   r   Ú<module>   s    