U
    ?hd                     @   s   g Z d dlZd dlZd dlmZmZ erNejeej	ej
e eje B  f ZnejZG dd deZeje_ee_ee dS )    N)TYPE_CHECKINGAnyc                   @   s(   e Zd ZdZdd Zdd Zdd ZdS )	Matz
    cv.Mat wrapper for numpy array.

    Stores extra metadata information how to interpret and process of numpy array for underlying C++ code.
    c                 K   s   | t}|S )N)viewr   )clsarrkwargsobj r
   J/var/www/html/venv/lib/python3.8/site-packages/cv2/mat_wrapper/__init__.py__new__   s    
zMat.__new__c                 K   s8   | dt|dd| _t|dkr4tdt|d S )Nwrap_channelsFr   zUnknown parameters: {})popgetattrr   len	TypeErrorformatrepr)selfr   r   r
   r
   r   __init__   s    zMat.__init__c                 C   s   |d krd S t |dd | _d S )Nr   )r   r   )r   r	   r
   r
   r   __array_finalize__    s    zMat.__array_finalize__N)__name__
__module____qualname____doc__r   r   r   r
   r
   r
   r   r      s   r   )__all__numpynpZcv2Zcvtypingr   r   ZndarrayZdtypeintegerZfloatingZ_NumPyArrayNumericr   r   r   Z_registerMatTyper
   r
   r
   r   <module>   s   &