klassify 0.1.6

Classify chimeric reads based on unique kmer contents
Documentation
�

?�h��b�ddlZddlZddlmZddlmZdefd�Zdddd�d�Z	ddd�d	edzfd
�Z
y)�N)�Path)�logger�namec�L�tj|��td|�d���y)z'
    Ensure a tool is in the PATH.
    NzRequired tool 'z' not found in PATH)�shutil�which�RuntimeError)rs �2/Users/bao/code/klassify/scripts/simulate/utils.py�
check_toolr	s-���|�|�D��!��_�T�F�2E�F�G�G�"�)�cwd�stdout�stdinc	��tjddjtt|���tj||||d��S)z
    Run a command.
    zRUN: %s� T)r
rr�check)r�info�join�map�str�sp�run)�cmdr
rrs    r
rrs8���K�K�	�3�8�8�C��S�M�2�3�
�6�6�#�3�e�F�$�G�Gr)r
�stdout_pathrc
�(�tjddjtt|��djtt|���tj||t
j��}t|d�5}tj|||j|��}|jj�|j�}|j�}|dk7s|dk7rtd|�d|�d	���	d
d
d
�y
#1swYy
xYw)z%
    Run a pipeline of commands.
    z
PIPE: %s | %sr)r
r�wb)r
rrrzPipeline failed (rc1=z, rc2=�)N)
rrrrrr�Popen�PIPE�openr�close�waitr	)	�cmd1�cmd2r
r�p1�fh�p2�rc1�rc2s	         r
�run_piper*s����K�K�����#�c�4�.�!9�3�8�8�C��T�N�;S�T�	���$�C����	0�B�	
�k�4�	 �B�
�X�X�d��2�9�9�R�
@��
�	�	�����g�g�i���g�g�i���!�8�s�a�x��!6�s�e�6�#��a�H�I�I� �
!�	 �	 �s
�A:D�D)r�
subprocessr�pathlibr�jcvi.apps.baserrrrr*�rr
�<module>r/sG��
���!�H�S�H���T�H�!%��J�4�$�;�Jr