B
    áÉ’\  ã               @   s4   d dl Z G dd„ deƒZdd„ Zdd„ Zdd	„ ZdS )
é    Nc               @   s.   e Zd ZdgZedd„ ƒZdd„ Zdd„ ZdS )	ÚPoissonÚ_tabc             C   s.   t j t jj||¡}tƒ }| ||| ¡ |S )N)ÚflatbuffersÚencodeÚGetÚpackerÚuoffsetr   ÚInit)ÚclsÚbufÚoffsetÚnÚx© r   úV/global/project/projectdirs/dasrepo/etalumis/pyprob_master_mar20/pyprob/ppx/Poisson.pyÚGetRootAsPoisson
   s    zPoisson.GetRootAsPoissonc             C   s   t j ||¡| _d S )N)r   ÚtableÚTabler   )Úselfr   Úposr   r   r   r	      s    zPoisson.Initc             C   s\   t jj | j d¡¡}|dkrX| j || jj ¡}ddlm} |ƒ }| 	| jj
|¡ |S d S )Né   r   é   )ÚTensor)r   Únumber_typesÚUOffsetTFlagsÚpy_typer   ÚOffsetÚIndirectÚPosr   r	   ÚBytes)r   Úor   r   Úobjr   r   r   ÚRate   s    zPoisson.RateN)Ú__name__Ú
__module__Ú__qualname__Ú	__slots__Úclassmethodr   r	   r"   r   r   r   r   r      s   r   c             C   s   |   d¡ d S )Nr   )ÚStartObject)Úbuilderr   r   r   ÚPoissonStart    s    r*   c             C   s   |   dtjj |¡d¡ d S )Nr   )ÚPrependUOffsetTRelativeSlotr   r   r   r   )r)   Úrater   r   r   ÚPoissonAddRate!   s    r-   c             C   s   |   ¡ S )N)Ú	EndObject)r)   r   r   r   Ú
PoissonEnd"   s    r/   )r   Úobjectr   r*   r-   r/   r   r   r   r   Ú<module>   s   