
    J/Ph0                        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 j        ee          Z ee           G d dej                              Z ee           G d	 d
ej                              Z ee	j                   G 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Z xZS )	Dim3Modelc                     dt           j        fdt           j        fdt           j        fg}t                                          |||           d S )Nxyz)r   int32super__init__)selfdmmfe_typemembers	__class__s       Q/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/numba/cuda/models.pyr   zDim3Model.__init__   sL    %+%+%+

 	gw/////    __name__
__module____qualname__r   __classcell__r   s   @r   r   r      s8        0 0 0 0 0 0 0 0 0r   r   c                        e Zd Z fdZ xZS )GridGroupModelc                 v    t          j        d          }t                                          |||           d S )N@   )r   IntTyper   r   r   r   r   be_typer   s       r   r   zGridGroupModel.__init__   s2    *R..gw/////r   r   r    s   @r   r"   r"      s8        0 0 0 0 0 0 0 0 0r   r"   c                        e Zd Z fdZ xZS )
FloatModelc                 T   |t           j        k    rt          j        d          }nW|t           j        k    rt          j                    }n3|t           j        k    rt          j                    }nt          |          t          t          |                               |||           d S )N   )r   float16r   r%   float32	FloatTypefloat64
DoubleTypeNotImplementedErrorr   r)   r   r&   s       r   r   zFloatModel.__init__$   s    em##jnnGG%%lnnGG%%mooGG%g...j$((gw?????r   r   r    s   @r   r)   r)   "   sA        	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@r   r)   )	functoolsllvmliter   numba.core.datamodel.registryr   r   numba.core.extendingr   
numba.corer   numba.cuda.typesr   r	   r
   cuda_data_managerpartialregister_modelStructModelr   PrimitiveModelr"   Floatr)   OpaqueModel r   r   <module>r@      s             D D D D D D D D ' ' ' ' ' '       < < < < < < < < < < %$&& ""8->?? 0 0 0 0 0" 0 0 0 	0 0 0 0 0V* 0 0 0 
@ 
@ 
@ 
@ 
@& 
@ 
@ 
@ ~  v1 2 2 2 2 2r   