U
    VºcÂ  ã                   @   s(   d dl Z d dlmZ G dd„ deƒZdS )é    N)Úmasked_crc32cc                   @   s<   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zed
d„ ƒZ	dS )ÚRecordWriterzDWrite encoded protobuf to a file with packing defined in tensorflow.c                 C   s
   || _ dS )z•Open a file to keep the tensorboard records.

        Args:
        writer: A file-like object that implements `write`, `flush` and `close`.
        N)Ú_writer)ÚselfÚwriter© r   úL/tmp/pip-unpacked-wheel-g8kmtpbc/tensorboard/summary/writer/record_writer.pyÚ__init__   s    zRecordWriter.__init__c                 C   sL   t  dt|ƒ¡}t  dt|ƒ¡}t  dt|ƒ¡}| j || | | ¡ d S )Nz<Qz<I)ÚstructÚpackÚlenr   r   Úwrite)r   ÚdataÚheaderZ
header_crcZ
footer_crcr   r   r   r   $   s    zRecordWriter.writec                 C   s   | j  ¡  d S ©N)r   Úflush©r   r   r   r   r   *   s    zRecordWriter.flushc                 C   s   | j  ¡  d S r   )r   Úcloser   r   r   r   r   -   s    zRecordWriter.closec                 C   s   | j jS r   )r   Úclosedr   r   r   r   r   0   s    zRecordWriter.closedN)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__r	   r   r   r   Úpropertyr   r   r   r   r   r      s   r   )r
   Z4tensorboard.compat.tensorflow_stub.pywrap_tensorflowr   Úobjectr   r   r   r   r   Ú<module>   s   