U
    <ºcX  ã                   @   s0   d Z ddlZddlZdd„ Zdd„ Zdd„ ZdS )	z0
This module converts objects into numpy array.
é    Nc                 C   sb   t | tjƒr| S t | tƒr"t| ƒS t | ¡r8t | g¡S t | tjƒrLt	| ƒS t
d t| ƒ¡ƒ‚dS )zv
    Args:
      x: An instance of torch tensor or caffe blob name

    Returns:
        numpy.array: Numpy array
    zHGot {}, but numpy array, torch tensor, or caffe2 blob name are expected.N)Ú
isinstanceÚnpZndarrayÚstrÚ_prepare_caffe2ZisscalarÚarrayÚtorchZTensorÚ_prepare_pytorchÚNotImplementedErrorÚformatÚtype©Úx© r   úG/tmp/pip-unpacked-wheel-gikjz4vx/torch/utils/tensorboard/_convert_np.pyÚmake_np   s    

ÿÿr   c                 C   s   |   ¡  ¡  ¡ } | S )N)ÚdetachÚcpuÚnumpyr   r   r   r   r      s    r   c                 C   s   ddl m} | | ¡} | S )Nr   )Ú	workspace)Zcaffe2.pythonr   Z	FetchBlob)r   r   r   r   r   r   $   s    
r   )Ú__doc__r   r   r   r   r   r   r   r   r   r   Ú<module>   s
   