3
š(ƒh¼  ã               @   sd   d dl mZ d dlmZ d dlmZ d dlmZm	Z
 d dlmZ d dlmZmZ G dd„ deƒZd	S )
é    )Úc_void_p)ÚGDALBase)ÚGDALException)ÚdsÚraster)Úsix)Úforce_bytesÚ
force_textc            
   @   s\   e Zd ZdZddddddddddœ	Zdd„ Zd	d
„ Zedd„ ƒZedd„ ƒZ	e
dd„ ƒZdS )ÚDriverz¯
    Wraps a GDAL/OGR Data Source Driver.
    For more information, see the C API source code:
    http://www.gdal.org/gdal_8h.html - http://www.gdal.org/ogr__api_8h.html
    zESRI ShapefileZTIGERZGTiffZJPEG)	ZesriZshpÚshapeZtigerz
tiger/lineZtiffZtifZjpegZjpgc             C   sÖ   t |tjƒr^| jƒ  |jƒ | jkr2| j|jƒ  }n|}x€ttfD ]}|jt	|ƒƒ}|r@P q@W nZt |t
ƒr”| jƒ  xFttfD ]}|j|ƒ}|rzP qzW n$t |tƒr¤|}ntdtt|ƒƒ ƒ‚|sÌtdt|ƒ ƒ‚|| _dS )zU
        Initializes an GDAL/OGR driver on either a string or integer input.
        z/Unrecognized input type for GDAL/OGR Driver: %sz1Could not initialize GDAL/OGR Driver on input: %sN)Ú
isinstancer   Ústring_typesÚensure_registeredÚlowerÚ_aliasÚvcapiÚrcapiZget_driver_by_namer   ÚintZ
get_driverr   r   ÚstrÚtypeÚptr)ÚselfZdr_inputÚnameZifaceZdriver© r   úB/tmp/pip-install-q3hcpn_q/Django/django/contrib/gis/gdal/driver.pyÚ__init__#   s*    


zDriver.__init__c             C   s   | j S )N)r   )r   r   r   r   Ú__str__G   s    zDriver.__str__c             C   s   | j ƒ stjƒ  tjƒ  dS )zC
        Attempts to register all the data source drivers.
        N)Údriver_countr   Zregister_allr   )Úclsr   r   r   r   J   s    zDriver.ensure_registeredc             C   s   t jƒ tjƒ  S )zP
        Returns the number of GDAL/OGR data source drivers registered.
        )r   Zget_driver_countr   )r   r   r   r   r   U   s    zDriver.driver_countc             C   s   t tj| jƒƒS )zB
        Returns description/name string for this driver.
        )r	   r   Zget_driver_descriptionr   )r   r   r   r   r   \   s    zDriver.nameN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   Úclassmethodr   r   Úpropertyr   r   r   r   r   r
   
   s   $r
   N)Úctypesr   Zdjango.contrib.gis.gdal.baser   Zdjango.contrib.gis.gdal.errorr   Z"django.contrib.gis.gdal.prototypesr   r   r   r   Zdjango.utilsr   Zdjango.utils.encodingr   r	   r
   r   r   r   r   Ú<module>   s   