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dddgZdd	d
ddddgZdddddddg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 )Útilt_control_tÚtime_unix_secÚcount_publishÚ	sender_idÚtilt_degreesÚtilt_countsÚnum_doublesÚdoublesÚdoubleÚint64_tÚstringÚint16_tzoi.double_tNc             C   s.   d| _ d| _d| _d| _d| _d| _g | _d S )Ng        r   Ú )r   r   r   r   r   r	   r
   )Úself© r   úN/Users/ericjmartin/Documents/OceanImaging/TiltingRicketts/oi/tilt_control_t.pyÚ__init__   s    ztilt_control_t.__init__c             C   s&   t ƒ }| t ¡ ¡ |  |¡ | ¡ S )N)r   Úwriter   Ú_get_packed_fingerprintÚ_encode_oneÚgetvalue)r   Úbufr   r   r   Úencode   s    
ztilt_control_t.encodec             C   s²   |  t d| j| j¡¡ | j d¡}|  t dt|ƒd ¡¡ |  |¡ |  d¡ |  t d| j| j	| j
¡¡ x>t| j
ƒD ]0}| j|  ¡ tj ¡ ksšt‚| j|  |¡ qzW d S )Nz>dqzutf-8z>Ié   ó    z>ddh)r   ÚstructÚpackr   r   r   r   Úlenr   r   r	   Úranger
   r   ÚoiÚdouble_tÚAssertionErrorr   )r   r   Z"_tilt_control_t__sender_id_encodedÚi0r   r   r   r   $   s    

ztilt_control_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tilt_control_t.decodec             C   s¢   t ƒ }t d|  d¡¡\|_|_t d|  d¡¡d }|  |¡d d…  dd¡|_t d	|  d
¡¡\|_|_	|_
g |_x&t|j
ƒD ]}|j tj | ¡¡ q‚W |S )Nz>dqé   z>Ié   r   éÿÿÿÿzutf-8Úreplacez>ddhé   )r   r   Úunpackr$   r   r   r*   r   r   r   r	   r
   r   Úappendr    r!   r(   )r   r   Z_tilt_control_t__sender_id_lenr#   r   r   r   r(   9   s    ztilt_control_t._decode_onec             C   sF   t | krdS | t g }dtj |¡ d@ }|d> d@ |d?  d@ }|S )Nr   l   —r¬l*z3 l   ÿÿÿÿ r   é?   )r   r    r!   Ú_get_hash_recursive)ÚparentsÚ
newparentsÚtmphashr   r   r   r3   F   s     
z"tilt_control_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   r3   r   r   r   r   r   O   s    
z&tilt_control_t._get_packed_fingerprint)Ú__name__Ú
__module__Ú__qualname__Ú	__slots__Ú__typenames__Ú__dimensions__r   r   r   r*   Ústaticmethodr(   Ú_hashr3   r7   r   r   r   r   r   r      s    	
r   )Ú__doc__ZcStringIO.StringIOÚStringIOr   ÚImportErrorÚior   Zoi.double_tr    Úobjectr   r   r   r   r   Ú<module>   s   