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dddddddddddddddgg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 )Úvalvepack_t©Útime_unix_secÚcount_publishÚ	sender_idÚtilt_power_statÚtilt_degreesÚtilt_sine_countsÚtilt_cosine_countsÚvalve_power_statÚvalve_analog_out_statÚtemp_degreesÚhigh_side_faultÚlow_side_faultÚground_faultÚnum_doublesÚdoubles)ÚdoubleÚint64_tÚstringÚbooleanr   Úint32_tr   r   r   r   r   r   r   Úint16_tzoi.double_tNr   c                 C   sz   d| _ 	 d| _	 d| _	 d| _	 d| _	 d| _	 d| _	 d| _	 d| _	 d| _		 d| _
	 d| _	 d| _	 d| _	 g | _d S )Ng        r   Ú Fr   ©Úself© r   úi/mbari/ProjectLibrary/901101_OceanImaging/2025 Scoping Study/2 Studies/LCM_DataAnalysis/oi/valvepack_t.pyÚ__init__   s<   zvalvepack_t.__init__c                 C   s&   t ƒ }| t ¡ ¡ |  |¡ | ¡ S )N)r   Úwriter   Ú_get_packed_fingerprintÚ_encode_oneÚgetvalue)r   Úbufr   r   r   ÚencodeT   s   
zvalvepack_t.encodec                 C   sÎ   |  t d| j| j¡¡ | j d¡}|  t dt|ƒd ¡¡ |  |¡ |  d¡ |  t d| j| j	| j
| j| j| j| j| j| j| j| j¡¡ t| jƒD ]}| j|  ¡ tj ¡ ks\J ‚| j|  |¡ qLd S )Nú>dqúutf-8ú>Ié   ó    z>bdiibidbbdh)r    ÚstructÚpackr   r   r   r%   Úlenr   r	   r
   r   r   r   r   r   r   r   r   Úranger   r!   ÚoiÚdouble_tr"   )r   r$   Z_valvepack_t__sender_id_encodedÚi0r   r   r   r"   Z   s   

<þzvalvepack_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   r3   r   r!   Ú
ValueErrorÚ_decode_one)r2   r$   r   r   r   Údecodee   s   

zvalvepack_t.decodec                 C   sB  t ƒ }t d|  d¡¡\|_|_t d|  d¡¡d }|  |¡d d…  dd¡|_tt d	|  d
¡¡d ƒ|_	t d|  d¡¡\|_
|_|_tt d	|  d
¡¡d ƒ|_t d|  d¡¡\|_|_tt d	|  d
¡¡d ƒ|_tt d	|  d
¡¡d ƒ|_t d|  d¡¡\|_|_g |_t|jƒD ]}|j tj | ¡¡ q’|S )Nr&   é   r(   é   r   éÿÿÿÿr'   ÚreplaceÚbr)   z>diiz>idé   z>dhé
   )r   r+   Úunpackr3   r   r   r8   r   Úboolr   r	   r
   r   r   r   r   r   r   r   r   r   r.   Úappendr/   r0   r7   )r$   r   Z_valvepack_t__sender_id_lenr1   r   r   r   r7   o   s   zvalvepack_t._decode_onec                 C   sF   t | v rdS | t g }dtj |¡ d@ }|d> d@ |d?  d@ }|S )Nr   l   pZjH*ZX l   ÿÿÿÿ r)   é?   )r   r/   r0   Ú_get_hash_recursive)ÚparentsÚ
newparentsÚtmphashr   r   r   rD      s
   
zvalvepack_t._get_hash_recursivec                   C   s$   t jd u rt dt  g ¡¡t _t jS )Nú>Q)r   Ú_packed_fingerprintr+   r,   rD   r   r   r   r   r!   Š   s   
z#valvepack_t._get_packed_fingerprintc                 C   s   t  dt ¡ ¡d S )zGet the LCM hash of the structrH   r   )r+   r@   r   r!   r   r   r   r   Úget_hash   s   zvalvepack_t.get_hash)Ú__name__Ú
__module__Ú__qualname__Ú	__slots__Ú__typenames__Ú__dimensions__r   r%   r"   ÚstaticmethodÚbytesr8   r7   rD   rI   r!   rJ   r   r   r   r   r      s"    $:	


r   )Ú__doc__Úior   r+   r/   Úobjectr   r   r   r   r   Ú<module>   s    