
    +j                         d Z ddlmZmZmZ ddlZddlZddlZddlZddl	m
Z
 	 ddlmZ ddlmZ n# e$ r  e
            w xY wddlmZ ddlmZ da G d	 d
ej                  ZdS )zXwslink is a module that extends any
wslink related classes for the purposes of vtkWeb.

    )absolute_importdivisionprint_functionN)WebDependencyMissingError)	websocket)register)	protocols)vtkWebApplicationc                   6    e Zd ZdZd Zd Zd Zd Zd Zd Z	dS )	ServerProtocolaN  
    Defines the core server protocol for vtkWeb. Adds support to
    marshall/unmarshall RPC callbacks that involve ServerManager proxies as
    arguments or return values.

    Applications typically don't use this class directly, but instead
    sub-class it and call self.registerVtkWebProtocol() with useful vtkWebProtocols.
    c                     t          j        d           |                     d|                                            t          j                            |            d S )NzCreating SPapp)logginginfosetSharedObjectinitApplicationr   r   __init__selfs    O/DATA/AppData/hermes/venv/lib/python3.11/site-packages/vtkmodules/web/wslink.pyr   zServerProtocol.__init__*   sQ    ]###UD$8$8$:$:;;; ))$/////    c                 :    t           st                      a t           S )z{
        Let subclass optionally initialize a custom application in lieu
        of the default vtkWebApplication.
        )applicationr
   r   s    r   r   zServerProtocol.initApplication/   s      	.+--Kr   c                 2    |                      d|           d S Nr   )r   )r   r   s     r   setApplicationzServerProtocol.setApplication9   s    UK00000r   c                 ,    |                      d          S r   )getSharedObjectr   s    r   getApplicationzServerProtocol.getApplication<   s    ##E***r   c                 0    |                      |           d S N)registerLinkProtocol)r   protocols     r   registerVtkWebProtocolz%ServerProtocol.registerVtkWebProtocol?   s    !!(+++++r   c                 *    |                                  S r!   )getLinkProtocolsr   s    r   getVtkWebProtocolsz!ServerProtocol.getVtkWebProtocolsB   s    $$&&&r   N)
__name__
__module____qualname____doc__r   r   r   r   r$   r'    r   r   r   r       sx         0 0 0
  1 1 1+ + +, , ,' ' ' ' 'r   r   )r+   
__future__r   r   r   jsonbase64r   timevtkmodules.web.errorsr   wslinkr   r   	exportRpcImportErrorvtkmodules.webr	   vtkmodules.vtkWebCorer
   r   r   r,   r   r   <module>r7      s.   
 A @ @ @ @ @ @ @ @ @ # " " " " " " " " " " " " " " " ; ; ; ; ; ;&      ,,,,,,, & & &
#
#
%
%%& % $ $ $ $ $ 3 3 3 3 3 3 #' #' #' #' #'Y- #' #' #' #' #'s	   1 A