o
    'Ni                     @   s"  d dl Zd dlZd dlmZ d dlmZ i ai a		 da
	 da	 da	 dag dZd dgddgddgdd	gd	d
gd
dgddgddgddgddgddgddgdZd ZdZdZdZdZdZeZed ZdZdZ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)d* Z#d+d, Z$dS )-    N)common)IndicNlpException&      )
basic_typevowel_lengthvowel_strengthvowel_statusconsonant_typearticulation_place
aspirationvoicingnasalizationvowel_horizontalvowel_verticalvowel_roundness                            $                     i   i.  c                  C   s   t jt d ddatjddtdf jatj	d a
tt d ddd } tt| D ]\}}| }|t|< |t|< q.W d   dS 1 sJw   Y  dS )zI
    To be called by library loader, do not call it in your program 
    z(/script/english_script_phonetic_data.csvzutf-8)encodingNr   z /script/english_arpabet_list.csvr)pdread_csvr   get_resources_pathENGLISH_PHONETIC_DATAilocPHONETIC_VECTOR_START_OFFSETvaluesENGLISH_PHONETIC_VECTORSshapePHONETIC_VECTOR_LENGTHopen	enumerateiterstripARPABET_ID_MAPID_ARPABET_MAP)infileph_idname r7   R/home/ubuntu/.local/lib/python3.10/site-packages/indicnlp/script/english_script.pyinit]   s   

"r9   c                 C      t |  S N)r2   phr7   r7   r8   phoneme_to_offsett      r>   c                 C   r:   r;   )r3   )r5   r7   r7   r8   offset_to_phonemew   r?   r@   c                 C   s   t tt|  S r;   )chrSCRIPT_RANGE_STARTr>   r<   r7   r7   r8   phoneme_to_encz      rC   c                 C   s   t t| S r;   )r@   enc_to_offsetr<   r7   r7   r8   enc_to_phoneme}      rF   c                 C   s   t | t S r;   )ordrB   )cr7   r7   r8   rE      rG   rE   c                 C   s   | t ko| tk S r;   )rB   SCRIPT_RANGE_END)offsetr7   r7   r8   in_range   rD   rL   c                 C   s   t tfS r;   )r'   r+   )langr7   r7   r8   get_phonetic_info   r?   rN   c                   C   s   t dgt S )Nr   )nparrayr-   r7   r7   r7   r8   invalid_vector   s   rQ   c                 C   sB   t | }t|st S t|\}}|j| d dkrt S || S )NzValid Vector Representationr   )rE   rL   rQ   rN   r(   )prM   rK   phonetic_dataphonetic_vectorsr7   r7   r8   get_phonetic_feature_vector   s   rU   )%pandasr$   numpyrO   indicnlpr   indicnlp.commonr   r2   r3   r'   r+   r-   r)   PV_PROPPV_PROP_RANGESPVIDX_BT_VOWELPVIDX_BT_CONSONANTPVIDX_BT_NUKTAPVIDX_BT_HALANTPVIDX_BT_ANUSVAARPVIDX_BT_MISC
PVIDX_BT_S
PVIDX_BT_EPVIDX_VSTAT_DEPrB   rJ   r9   r>   r@   rC   rF   rE   rL   rN   rQ   rU   r7   r7   r7   r8   <module>   sb   