a
    ߙfb                     @   s>   d dl mZ d dlmZ d dlmZ dgZG dd deZdS )   )HighLevelWCSMixin)BaseLowLevelWCS)wcs_info_strHighLevelWCSWrapperc                   @   s   e Zd ZdZdd Zedd Zedd Zedd	 Zed
d Z	edd Z
edd Zedd Zedd Zdd Zdd Zdd ZdS )r   z
    Wrapper class that can take any :class:`~astropy.wcs.wcsapi.BaseLowLevelWCS`
    object and expose the high-level WCS API.
    c                 C   s   t |tstd|| _d S )Nz=Input to a HighLevelWCSWrapper must be a low level WCS object)
isinstancer   	TypeError_low_level_wcs)selflow_level_wcs r   Hlib/python3.9/site-packages/astropy/wcs/wcsapi/high_level_wcs_wrapper.py__init__   s    
zHighLevelWCSWrapper.__init__c                 C   s   | j S N)r   r	   r   r   r   r
      s    z!HighLevelWCSWrapper.low_level_wcsc                 C   s   | j jS zG
        See `~astropy.wcs.wcsapi.BaseLowLevelWCS.world_n_dim`
        )r
   pixel_n_dimr   r   r   r   r      s    zHighLevelWCSWrapper.pixel_n_dimc                 C   s   | j jS r   )r
   world_n_dimr   r   r   r   r      s    zHighLevelWCSWrapper.world_n_dimc                 C   s   | j jS )zU
        See `~astropy.wcs.wcsapi.BaseLowLevelWCS.world_axis_physical_types`
        )r
   world_axis_physical_typesr   r   r   r   r   &   s    z-HighLevelWCSWrapper.world_axis_physical_typesc                 C   s   | j jS )zL
        See `~astropy.wcs.wcsapi.BaseLowLevelWCS.world_axis_units`
        )r
   world_axis_unitsr   r   r   r   r   -   s    z$HighLevelWCSWrapper.world_axis_unitsc                 C   s   | j jS )zG
        See `~astropy.wcs.wcsapi.BaseLowLevelWCS.array_shape`
        )r
   array_shaper   r   r   r   r   4   s    zHighLevelWCSWrapper.array_shapec                 C   s   | j jS )zH
        See `~astropy.wcs.wcsapi.BaseLowLevelWCS.pixel_bounds`
        )r
   pixel_boundsr   r   r   r   r   ;   s    z HighLevelWCSWrapper.pixel_boundsc                 C   s   | j jS )zS
        See `~astropy.wcs.wcsapi.BaseLowLevelWCS.axis_correlation_matrix`
        )r
   axis_correlation_matrixr   r   r   r   r   B   s    z+HighLevelWCSWrapper.axis_correlation_matrixc                 C   s
   | j  S )zH
        See `~astropy.wcs.wcsapi.BaseLowLevelWCS._as_mpl_axes`
        )r
   _as_mpl_axesr   r   r   r   r   I   s    z HighLevelWCSWrapper._as_mpl_axesc                 C   s
   t | jS r   )r   r
   r   r   r   r   __str__O   s    zHighLevelWCSWrapper.__str__c                 C   s   t |  dt|  S )N
)object__repr__strr   r   r   r   r   R   s    zHighLevelWCSWrapper.__repr__N)__name__
__module____qualname____doc__r   propertyr
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r      s*   







N)Zhigh_level_apir   Zlow_level_apir   Zutilsr   __all__r   r   r   r   r   <module>   s   