B
    ?=^ê  ã               @   sR   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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ddddd	d
dgZdddddddddddgZddddddd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 )Úext_target_tÚ
left_utimeÚright_utimeÚleft_class_nameÚright_class_nameÚleft_xÚleft_yÚright_xÚright_yÚ	conf_leftÚ
conf_rightÚsourceÚint64_tÚstringÚdoubleNc             C   sF   d| _ d| _d| _d| _d| _d| _d| _d| _d| _d| _	d| _
d S )Nr   Ú g        )r   r   r   r   r   r	   r
   r   r   r   r   )Úself© r   úBX:\800139.EyeRIS\EyeRIS.Software\ml-tracking\mbari\ext_target_t.pyÚ__init__   s    zext_target_t.__init__c             C   s&   t ƒ }| t ¡ ¡ |  |¡ | ¡ S )N)r   Úwriter   Ú_get_packed_fingerprintÚ_encode_oneÚgetvalue)r   Úbufr   r   r   Úencode    s    
zext_target_t.encodec             C   s¼   |  t d| j| j¡¡ | j d¡}|  t dt|ƒd ¡¡ |  |¡ |  d¡ | j d¡}|  t dt|ƒd ¡¡ |  |¡ |  d¡ |  t d| j	| j
| j| j| j| j| j¡¡ d S )Nz>qqzutf-8z>Ié   ó    z>ddddddd)r   ÚstructÚpackr   r   r   r   Úlenr   r   r	   r
   r   r   r   r   )r   r   Z&_ext_target_t__left_class_name_encodedZ'_ext_target_t__right_class_name_encodedr   r   r   r   &   s    



zext_target_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   Údecode2   s    
zext_target_t.decodec             C   s¶   t ƒ }t d|  d¡¡\|_|_t d|  d¡¡d }|  |¡d d…  dd¡|_t d|  d¡¡d }|  |¡d d…  dd¡|_t d	|  d
¡¡\|_	|_
|_|_|_|_|_|S )Nz>qqé   z>Ié   r   éÿÿÿÿzutf-8Úreplacez>dddddddé8   )r   r   Úunpackr"   r   r   r(   r   r   r   r	   r
   r   r   r   r   )r   r   Z"_ext_target_t__left_class_name_lenZ#_ext_target_t__right_class_name_lenr   r   r   r&   <   s    .zext_target_t._decode_onec             C   s,   t | krdS d}|d> d@ |d?  d@ }|S )Nr   l   F¿M4?r   l   ÿÿÿÿ é?   )r   )ÚparentsÚtmphashr   r   r   Ú_get_hash_recursiveH   s
     z ext_target_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    r2   r   r   r   r   r   P   s    
z$ext_target_t._get_packed_fingerprint)Ú__name__Ú
__module__Ú__qualname__Ú	__slots__Ú__typenames__Ú__dimensions__r   r   r   r(   Ústaticmethodr&   Ú_hashr2   r3   r   r   r   r   r   r      s    	r   )	Ú__doc__ZcStringIO.StringIOÚStringIOr   ÚImportErrorÚior   Úobjectr   r   r   r   r   Ú<module>   s   