o
    ‘i0  ã                   @   sÄ   d dl Z d dlmZ d dlmZmZ d dlmZ d dlm	Z	 d dl
mZmZmZ eƒ Ze  ee¡ZeeƒG dd„ dejƒƒZeeƒG d	d
„ d
ejƒƒZee	jƒG dd„ dejƒƒZeeƒejƒ dS )é    N)Úir)ÚDataModelManagerÚregister)Úmodels)Útypes)ÚDim3Ú	GridGroupÚCUDADispatcherc                       ó   e Zd Z‡ fdd„Z‡  ZS )Ú	Dim3Modelc                    s0   dt jfdt jfdt jfg}tƒ  |||¡ d S )NÚxÚyÚz)r   Zint32ÚsuperÚ__init__)ÚselfÚdmmÚfe_typeÚmembers©Ú	__class__© ú`/var/www/html/eduruby.in/lip-sync/lip-sync-env/lib/python3.10/site-packages/numba/cuda/models.pyr      s
   ýzDim3Model.__init__©Ú__name__Ú
__module__Ú__qualname__r   Ú__classcell__r   r   r   r   r      ó    r   c                       r
   )ÚGridGroupModelc                    s   t  d¡}tƒ  |||¡ d S )Né@   )r   ÚIntTyper   r   ©r   r   r   Zbe_typer   r   r   r      s   
zGridGroupModel.__init__r   r   r   r   r   r      r   r   c                       r
   )Ú
FloatModelc                    s^   |t jkrt d¡}n|t jkrt ¡ }n|t jkrt ¡ }nt|ƒ‚t	t
| ƒ |||¡ d S )Né   )r   Zfloat16r   r!   Zfloat32Z	FloatTypeZfloat64Z
DoubleTypeÚNotImplementedErrorr   r#   r   r"   r   r   r   r   $   s   




zFloatModel.__init__r   r   r   r   r   r#   "   r   r#   )Ú	functoolsZllvmliter   Znumba.core.datamodel.registryr   r   Znumba.core.extendingr   Z
numba.corer   Znumba.cuda.typesr   r   r	   Zcuda_data_managerÚpartialZregister_modelZStructModelr   ZPrimitiveModelr   ÚFloatr#   ZOpaqueModelr   r   r   r   Ú<module>   s    
