
    khW	                     X    d dl mZmZ d dlmZmZmZmZ  G d de      Z G d de      Z	y)    )ABCabstractmethod)DictListOptionalUnionc                       e Zd Zd Zed        Zed        Zeddededee	e
   ee
e
f   f   fd       Zede
fd       Zedd	edede
fd
       Zedde
dede
fd       Zy)DatasetInfoc                      y N selfs    R/var/www/teggl/fontify/venv/lib/python3.12/site-packages/timm/data/dataset_info.py__init__zDatasetInfo.__init__   s        c                      y r   r   r   s    r   num_classeszDatasetInfo.num_classes
       r   c                      y r   r   r   s    r   label_nameszDatasetInfo.label_names   r   r   detailedas_dictreturnc                      y r   r   r   r   r   s      r   label_descriptionszDatasetInfo.label_descriptions   r   r   c                      y r   r   r   indexs     r   index_to_label_namezDatasetInfo.index_to_label_name   r   r   r    c                      y r   r   )r   r    r   s      r   index_to_descriptionz DatasetInfo.index_to_description   r   r   labelc                      y r   r   r   r$   r   s      r   label_name_to_descriptionz%DatasetInfo.label_name_to_description   r   r   NFFF)__name__
__module____qualname__r   r   r   r   boolr   r   strr   r   r!   intr#   r'   r   r   r   r
   r
      s         4 $ SXY]^aYbdhilnqiqdrYrSs   C   #  #   s d s  r   r
   c                        e Zd ZdZ	 ddeee   eeef   f   de	eeef      f fdZ
d Zd Zddeded	eee   eeef   f   fd
Zddeded	efdZd	efdZddeded	efdZ xZS )CustomDatasetInfoz: DatasetInfo that wraps passed values for custom datasets.r   r   c                     t         |           t        |      dkD  sJ || _        || _        | j                  >t        | j                  t              sJ | j                  D ]  }|| j                  v rJ  y y Nr   )superr   len_label_names_label_descriptions
isinstancedict)r   r   r   n	__class__s       r   r   zCustomDatasetInfo.__init__&   s    
 	;!###'#5 ##/d66===&& 5D444445 0r   c                 ,    t        | j                        S r   r5   r6   r   s    r   r   zCustomDatasetInfo.num_classes5   s    4$$%%r   c                     | j                   S r   )r6   r   s    r   r   zCustomDatasetInfo.label_names8   s       r   r   r   r   c                     | j                   S r   r7   r   s      r   r   z$CustomDatasetInfo.label_descriptions;   s    '''r   r$   c                 <    | j                   r| j                   |   S |S r   r@   r&   s      r   r'   z+CustomDatasetInfo.label_name_to_description>   s!    ##++E22r   c                 f    d|cxk  rt        | j                        k  sJ  J | j                  |   S r3   r=   r   s     r   r!   z%CustomDatasetInfo.index_to_label_nameC   s7    E2C 1 1222222  ''r   r    c                 J    | j                  |      }| j                  ||      S )N)r   )r!   r'   )r   r    r   r$   s       r   r#   z&CustomDatasetInfo.index_to_descriptionG   s(    ((/--eh-GGr   r   r(   r)   )r*   r+   r,   __doc__r   r   r.   r   r/   r   r   r   r   r-   r   r'   r!   r#   __classcell__)r;   s   @r   r1   r1   #   s    D
 <@5tCy$sCx.895 !)c3h 85&!(4 ($ (SXY]^aYbdhilnqiqdrYrSs (s d s 
(C (H# H H# Hr   r1   N)
abcr   r   typingr   r   r   r   r
   r1   r   r   r   <module>rH      s(    # . .# <&H &Hr   