U
    U?h
                     @   sl   d dl Z d dlmZ e ZG dd dZdd Zdd Zd	d
 Zdd Zdd Z	dd Z
dd Zdd ZdS )    N)import_numpyc                   @   sN   e Zd ZdgZedddZedddZdd Zd	d
 Zdd Z	dd Z
dS )TrtTable_tabr   c                 C   s.   t jt jj||}t }||||  |S N)flatbuffersencodeZGetpackerZuoffsetr   Init)clsbufoffsetnx r   g/var/www/html/venv/lib/python3.8/site-packages/onnxruntime/quantization/CalTableFlatBuffers/TrtTable.py	GetRootAs   s    zTrtTable.GetRootAsc                 C   s   |  ||S )z6This method is deprecated. Please switch to GetRootAs.)r   )r
   r   r   r   r   r   GetRootAsTrtTable   s    zTrtTable.GetRootAsTrtTablec                 C   s   t j||| _d S r   )r   tableTabler   )selfr   posr   r   r   r	      s    zTrtTable.Initc                 C   sv   t jj| jd}|dkrr| j|}|t jj|d 7 }| j|}ddlm	} | }|
| jj| |S d S )N   r   )KeyValue)r   number_typesUOffsetTFlagspy_typer   OffsetZVectorZIndirectZ5onnxruntime.quantization.CalTableFlatBuffers.KeyValuer   r	   Bytes)r   jor   r   objr   r   r   Dict   s    zTrtTable.Dictc                 C   s.   t jj| jd}|dkr*| j|S dS Nr   r   )r   r   r   r   r   r   Z	VectorLenr   r   r   r   r   
DictLength-   s    zTrtTable.DictLengthc                 C   s   t jj| jd}|dkS r"   )r   r   r   r   r   r   r#   r   r   r   
DictIsNone4   s    zTrtTable.DictIsNoneN)r   )r   )__name__
__module____qualname__	__slots__classmethodr   r   r	   r!   r$   r%   r   r   r   r   r      s   r   c                 C   s   |  d d S )N   )ZStartObjectbuilderr   r   r   Start9   s    r.   c                 C   s   t | S z2This method is deprecated. Please switch to Start.)r.   r,   r   r   r   TrtTableStart=   s    r0   c                 C   s   |  dtjj|d d S )Nr   )ZPrependUOffsetTRelativeSlotr   r   r   r   r-   dictr   r   r   AddDictB   s    r3   c                 C   s
   t | |S )z4This method is deprecated. Please switch to AddDict.)r3   r1   r   r   r   TrtTableAddDictF   s    r4   c                 C   s   |  d|dS )Nr   )ZStartVectorr-   ZnumElemsr   r   r   StartDictVectorK   s    r6   c                 C   s
   t | |S r/   )r6   r5   r   r   r   TrtTableStartDictVectorO   s    r7   c                 C   s   |   S r   )Z	EndObjectr,   r   r   r   EndT   s    r8   c                 C   s   t | S )z0This method is deprecated. Please switch to End.)r8   r,   r   r   r   TrtTableEndX   s    r9   )r   Zflatbuffers.compatr   npr   r.   r0   r3   r4   r6   r7   r8   r9   r   r   r   r   <module>   s   .