o
    ¢Äi   ã                   @   s|   d Z ddlZddlmZmZ ej e¡d  ej 	dd¡¡s%ddl
mZ nddlmZ G dd„ dejƒZG d	d
„ d
eƒZdS )zPython TFLite metrics helper.é    N)ÚOptionalÚTextÚtflite_runtimeZmetrics_portable)Úmetrics_interfacec                   @   sl   e Zd ZdZ		ddee dee ddf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 )ÚTFLiteMetricszTFLite metrics helper.NÚ
model_hashÚ
model_pathÚreturnc                 C   ó   d S ©N© )Úselfr   r   r   r   úY/home/kim/smarthome/.venv/lib/python3.10/site-packages/tflite_runtime/metrics_portable.pyÚ__init__!   s   zTFLiteMetrics.__init__c                 C   r
   r   r   ©r   r   r   r   Ú"increase_counter_debugger_creation&   ó   z0TFLiteMetrics.increase_counter_debugger_creationc                 C   r
   r   r   r   r   r   r   Ú%increase_counter_interpreter_creation)   r   z3TFLiteMetrics.increase_counter_interpreter_creationc                 C   r
   r   r   r   r   r   r   Ú"increase_counter_converter_attempt,   r   z0TFLiteMetrics.increase_counter_converter_attemptc                 C   r
   r   r   r   r   r   r   Ú"increase_counter_converter_success/   r   z0TFLiteMetrics.increase_counter_converter_successc                 C   r
   r   r   )r   ÚnameÚvaluer   r   r   Úset_converter_param2   r   z!TFLiteMetrics.set_converter_paramc                 C   r
   r   r   )r   Z
error_datar   r   r   Úset_converter_error5   r   z!TFLiteMetrics.set_converter_errorc                 C   r
   r   r   )r   r   r   r   r   Úset_converter_latency8   r   z#TFLiteMetrics.set_converter_latency)NN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r   r   r   r   r   r   r   r   r      s$    þÿþ
þr   c                   @   s(   e Zd ZdZdd„ Zdd„ Zdd„ ZdS )	ÚTFLiteConverterMetricsz7Similar to TFLiteMetrics but specialized for converter.c                 C   r
   r   r   r   r   r   r   Ú__del__?   r   zTFLiteConverterMetrics.__del__c                 C   r
   r   r   r   r   r   r   Úset_export_requiredB   r   z*TFLiteConverterMetrics.set_export_requiredc                 C   r
   r   r   r   r   r   r   Úexport_metricsE   r   z%TFLiteConverterMetrics.export_metricsN)r   r   r   r   r    r!   r"   r   r   r   r   r   <   s
    r   )r   ÚosÚtypingr   r   ÚpathÚsplitextÚ__file__ÚendswithÚjoinZtensorflow.lite.python.metricsr   r   ZTFLiteMetricsInterfacer   r   r   r   r   r   Ú<module>   s   ÿ