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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 )Úctd_tz+
    Struct: ctd_t
    CTD Measurement
    )ÚheaderÚconductivity_smÚtemperature_degcÚpressure_decibarÚsalinity_psuÚsound_velocity_ms)zoi.lcm_header_tÚdoubler
   r
   r
   r
   )NNNNNNc                 C   s6   t  ¡ | _	 d| _	 d| _	 d| _	 d| _	 d| _d S )Ng        )ÚoiÚlcm_header_tr   r   r   r   r   r	   ©Úself© r   úc/mbari/ProjectLibrary/901101_OceanImaging/2025 Scoping Study/2 Studies/LCM_DataAnalysis/oi/ctd_t.pyÚ__init__   s   
zctd_t.__init__c                 C   s&   t ƒ }| t ¡ ¡ |  |¡ | ¡ S )N)r   Úwriter   Ú_get_packed_fingerprintÚ_encode_oneÚgetvalue©r   Úbufr   r   r   ÚencodeJ   s   
zctd_t.encodec              
   C   sL   | j  ¡ tj ¡ ksJ ‚| j  |¡ | t d| j| j	| j
| j| j¡¡ d S )Nú>ddddd)r   r   r   r   r   r   ÚstructÚpackr   r   r   r   r	   r   r   r   r   r   P   s   (zctd_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   ÚdecodeU   s   

zctd_t.decodec                 C   s>   t ƒ }tj | ¡|_t d|  d¡¡\|_|_	|_
|_|_|S )Nr   é(   )r   r   r   r!   r   r   Úunpackr   r   r   r   r   r	   )r   r   r   r   r   r!   _   s   &zctd_t._decode_onec                 C   sF   t | v rdS | t g }dtj |¡ d@ }|d> d@ |d?  d@ }|S )Nr   l   .Q¤t? l   ÿÿÿÿ é   é?   )r   r   r   Ú_get_hash_recursive)ÚparentsZ
newparentsZtmphashr   r   r   r'   f   s
   
zctd_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   r'   r   r   r   r   r   o   s   
zctd_t._get_packed_fingerprintc                 C   s   t  dt ¡ ¡d S )zGet the LCM hash of the structr)   r   )r   r$   r   r   r   r   r   r   Úget_hashu   s   zctd_t.get_hash)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__Z__typenames__Z__dimensions__r   r   r   ÚstaticmethodÚbytesr"   r!   r'   r*   r   r+   r   r   r   r   r      s$    ,	


r   )r/   Úior   r   r   Úobjectr   r   r   r   r   Ú<module>   s    