U
    h                     @   sd   d dl mZ ddlmZ d dlZd dlmZ d dlZd dl	Z	ddl
mZ dd ZG d	d
 d
eZdS )    )ArgumentParser   )BaseInsightFaceCLICommandN   )downloadc                 C   s   t | j| j| jS N)ModelDownloadCommandmodelrootforce)args r   G/tmp/pip-unpacked-wheel-5oclok7i/insightface/commands/model_download.pymodel_download_command_factory   s    r   c                   @   s8   e Zd ZeedddZeeedddZdd Z	d	S )
r   )parserc                 C   sL   |  d}|jdtddd |jdddd	 |jd
tdd |jtd d S )Nzmodel.downloadz--rootz~/.insightfacez$Path to location to store the models)typedefaulthelpz--force
store_truez:Force the model to be download even if already in root-dir)actionr   r	   zName of the model to download)r   r   )func)
add_parseradd_argumentstrset_defaultsr   )r   Zdownload_parserr   r   r   register_subcommand   s    
     z(ModelDownloadCommand.register_subcommand)r	   r
   r   c                 C   s   || _ || _|| _d S r   )_model_root_force)selfr	   r
   r   r   r   r   __init__   s    zModelDownloadCommand.__init__c                 C   s   t d| j| j| jd d S )Nmodels)r   r
   )r   r   r   r   )r   r   r   r   run"   s    zModelDownloadCommand.runN)
__name__
__module____qualname__staticmethodr   r   r   boolr    r"   r   r   r   r   r      s   r   )argparser    r   osos.pathpathZospzipfileglobutilsr   r   r   r   r   r   r   <module>   s   