
    çg                     l    d dl m Z  d dl mZ d Z G d d          Z G d d          Z e            ZdS )	   )backends)
DriverBasec                      d t          j                    D             } t          |           dk    r"t          t          |            d|  d           | d                     S )Nc                 N    g | ]"}|j                                         |j         #S  )driver	is_active).0xs     Q/var/www/html/ai-engine/env/lib/python3.11/site-packages/triton/runtime/driver.py
<listcomp>z"_create_driver.<locals>.<listcomp>   s-    KKKAah6H6H6J6JKqxKKK       z active drivers (z). There should only be one.    )r   valueslenRuntimeError)activess    r   _create_driverr      sc    KK!2!2KKKG
7||qc'llbbWbbbccc71:<<r   c                   B     e Zd Zd Zd Zd Z fdZd Zd Zd Z	 xZ
S )	LazyProxyc                 "    || _         d | _        d S N_init_fn_obj)selfinit_fns     r   __init__zLazyProxy.__init__   s    			r   c                 J    | j         |                                 | _         d S d S r   )r   r   r   s    r   _initialize_objzLazyProxy._initialize_obj   s%    9DIII r   c                 T    |                                   t          | j        |          S r   )r"   getattrr   r   names     r   __getattr__zLazyProxy.__getattr__   s&    ty$'''r   c                     |dv r$t                                          ||           d S |                                  t          | j        ||           d S )Nr   )super__setattr__r"   setattrr   )r   r&   value	__class__s      r   r*   zLazyProxy.__setattr__   s[    '''GGe,,,,,  """DItU+++++r   c                 X    |                                   t          | j        |           d S r   )r"   delattrr   r%   s     r   __delattr__zLazyProxy.__delattr__!   s,    	4     r   c                 h    | j         d| j        j         d| j         dS t	          | j                   S )N<z for z not yet initialized>)r   r-   __name__r   reprr!   s    r   __repr__zLazyProxy.__repr__%   s8    9Yt~.YYT]YYYYDIr   c                 R    |                                   t          | j                  S r   )r"   strr   r!   s    r   __str__zLazyProxy.__str__*   s"    49~~r   )r3   
__module____qualname__r   r"   r'   r*   r0   r5   r8   __classcell__)r-   s   @r   r   r      s          ( ( (( ( (, , , , ,! ! !  
      r   r   c                   &    e Zd Zd ZdefdZd ZdS )DriverConfigc                 P    t          t                    | _        | j        | _        d S r   )r   r   defaultactiver!   s    r   r   zDriverConfig.__init__1   s     00lr   r   c                     || _         d S r   )r@   )r   r   s     r   
set_activezDriverConfig.set_active5   s    r   c                     | j         | _        d S r   )r?   r@   r!   s    r   reset_activezDriverConfig.reset_active8   s    lr   N)r3   r9   r:   r   r   rB   rD   r   r   r   r=   r=   /   sM        # # #    # # # # #r   r=   N)r   r   r   r   r=   r   r   r   r   <module>rE      s          ! ! ! ! ! !                 F
# 
# 
# 
# 
# 
# 
# 
# 
r   