B
    ?=^b	  ã               @   sZ   d Z yddlmZ W n  ek
r4   ddlmZ Y nX 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!!!!
é    N)ÚBytesIOc               @   s   e Zd ZddddgZddddgZddddgZdd	„ Zd
d„ Zdd„ Zdd„ Z	e
e	ƒZ	dd„ Ze
eƒZdZdd„ Ze
eƒZdZdd„ Ze
eƒZdS )Úphi_theta_psi_tÚheaderÚphiÚthetaÚpsizmbari.header_tÚdoubleNc             C   s    t  ¡ | _d| _d| _d| _d S )Ng        )ÚmbariÚheader_tr   r   r   r   )Úself© r   úEX:\800139.EyeRIS\EyeRIS.Software\ml-tracking\mbari\phi_theta_psi_t.pyÚ__init__   s    
zphi_theta_psi_t.__init__c             C   s&   t ƒ }| t ¡ ¡ |  |¡ | ¡ S )N)r   Úwriter   Ú_get_packed_fingerprintÚ_encode_oneÚgetvalue)r   Úbufr   r   r   Úencode   s    
zphi_theta_psi_t.encodec             C   sD   | j  ¡ tj ¡ kst‚| j  |¡ | t d| j	| j
| j¡¡ d S )Nz>ddd)r   r   r	   r
   ÚAssertionErrorr   r   ÚstructÚpackr   r   r   )r   r   r   r   r   r   !   s    zphi_theta_psi_t._encode_onec             C   s<   t | dƒr| }nt| ƒ}| d¡t ¡ kr2tdƒ‚t |¡S )NÚreadé   zDecode error)Úhasattrr   r   r   r   Ú
ValueErrorÚ_decode_one)Údatar   r   r   r   Údecode&   s    
zphi_theta_psi_t.decodec             C   s6   t ƒ }tj | ¡|_t d|  d¡¡\|_|_	|_
|S )Nz>dddé   )r   r	   r
   r   r   r   Úunpackr   r   r   r   )r   r   r   r   r   r   0   s    zphi_theta_psi_t._decode_onec             C   sF   t | krdS | t g }dtj |¡ d@ }|d> d@ |d?  d@ }|S )Nr   l   ð6\KHÀf l   ÿÿÿÿ é   é?   )r   r	   r
   Ú_get_hash_recursive)ÚparentsÚ
newparentsÚtmphashr   r   r   r#   8   s     
z#phi_theta_psi_t._get_hash_recursivec               C   s$   t jd krt dt  g ¡¡t _t jS )Nz>Q)r   Ú_packed_fingerprintr   r   r#   r   r   r   r   r   A   s    
z'phi_theta_psi_t._get_packed_fingerprint)Ú__name__Ú
__module__Ú__qualname__Ú	__slots__Ú__typenames__Ú__dimensions__r   r   r   r   Ústaticmethodr   Ú_hashr#   r'   r   r   r   r   r   r      s    r   )Ú__doc__ZcStringIO.StringIOÚStringIOr   ÚImportErrorÚior   Úmbari.header_tr	   Úobjectr   r   r   r   r   Ú<module>   s   