ó
¦s§]c           @   s2   d  Z  d e f d „  ƒ  YZ d „  Z d „  Z d S(   s   Misc. useful thingst   Trackerc           B   s&   e  Z d  Z d d d „ Z d „  Z RS(   s   Tracks progress of taski    c         C   s(   | |  _  | |  _ | |  _ | |  _ d  S(   N(   t   namet   sizet   currPercentaget   count(   t   selfR   R   R   R   (    (    sh   /oak/stanford/groups/akundaje/marinovg/Symbiodinium/2019-09-27-figures/multi_mds/miniMDS-master/tools.pyt   __init__   s    			c         C   sŠ   |  j  d k r† |  j  d  k	 r† |  j d 7_ |  j d } t |  j ƒ |  j  t | ƒ d k r† | |  _ d j |  j |  j ƒ GHq† n  d  S(   Ni    i   id   s   {} {}% complete(   R   t   NoneR   R   t   floatt   formatR   (   R   t   newPercentage(    (    sh   /oak/stanford/groups/akundaje/marinovg/Symbiodinium/2019-09-27-figures/multi_mds/miniMDS-master/tools.pyt	   increment
   s    &	(   t   __name__t
   __module__t   __doc__R   R   (    (    (    sh   /oak/stanford/groups/akundaje/marinovg/Symbiodinium/2019-09-27-figures/multi_mds/miniMDS-master/tools.pyR       s   c   	      C   sº   t  } x­ t |  | | ƒ D]™ \ } } } | d } | d } | d  k	 rw | t | ƒ k rw d j | | ƒ GHt } qw n  | d  k	 r | t | ƒ k r² d j | | ƒ GHt } q² q q W| S(   Ni    i   s   Error. {} must be > {}.s   Error. {} must be < {}.(   t   Truet   zipR   R   R	   t   False(	   t   argst   namest	   intervalst
   valid_argst   argR   t   intervalt   lower_boundt   upper_bound(    (    sh   /oak/stanford/groups/akundaje/marinovg/Symbiodinium/2019-09-27-figures/multi_mds/miniMDS-master/tools.pyt   args_are_valid   s    "

c         C   s@   t  |  d ƒ } | d k  r* t | ƒ d St | d ƒ d Sd S(   s/   Converts resolution in bp to string (e.g. 10kb)iè  t   kbt   mbN(   t   intt   str(   t   rest   res_kb(    (    sh   /oak/stanford/groups/akundaje/marinovg/Symbiodinium/2019-09-27-figures/multi_mds/miniMDS-master/tools.pyt   get_res_string!   s    N(   R   t   objectR    R   R!   (    (    (    sh   /oak/stanford/groups/akundaje/marinovg/Symbiodinium/2019-09-27-figures/multi_mds/miniMDS-master/tools.pyt   <module>   s   	