ó
ąxTc           @   s   d  d l  m Z d  d l Z d  d l Z d  d l m Z d  d l Z d   Z	 d Z
 e j e d  Z e d k r e e j d  n  d S(	   i˙˙˙˙(   t   divisionN(   t   Usagec           C   s   t  j j d d d t  S(   Nt   input_stringsp  
    include scope mmtbx.validation.molprobity_cmdline_phil_str
    data_version = 500
      .type = str
      .help = '''Choose which dataset to use, Top '8000' or '500' '''
    show_errors = False
      .type = bool
      .help = '''Print out errors'''
    wxplot = False
      .type = bool
      .help = Display interactive plots (requires wxPython and Matplotlib)
t   process_includes(   t   iotbxt   philt   parset   True(    (    (    sI   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/mmtbx/command_line/rotalyze.pyt   get_master_phil
   s    su  phenix.rotalyze file.pdb [params.eff] [options ...]

Options:

  model=input_file        input PDB file
  outliers_only=False   only print outliers
  verbose=False         verbose text output
  data_version=500      Give '500' to use the Top500 data and
                        '8000' to use the Top8000 data.

Example:

  phenix.rotalyze model=1ubq.pdb outliers_only=True
c         C   sD  t  j j d |  d t   d d d t  } | j j   } | j d  k rW t	 t   n  | j
 | j d d } | j j } t j j j d | d	 | j d
 | j d | j d | d |  } | j rÜ | j d | d t  n  | j r@y d d  l } Wn t k
 r}	 t d   q@X| j j d  }
 | j   |
 j   n  d  S(   Nt   argst   master_philt   pdb_file_deft   modelt   usage_stringt
   force_typet   pdbt   pdb_hierarchyt   data_versiont   show_errorst   outliers_onlyt   outt   quiett   verbosei˙˙˙˙s   wxPython not available.i    (   R   R   t   process_command_line_with_filesR   R   t   workt   extractR   t   NoneR   t   get_filet   file_objectt	   hierarchyt   mmtbxt
   validationt   rotalyzeR   R   R   R   t   show_old_outputR   t   wxplott	   wxtbx.appt   ImportErrort   Sorryt   appt   CCTBXAppt   display_wx_plotst   MainLoop(   R	   R   R   t   cmdlinet   paramst   pdb_inR   t   resultt   wxtbxt   eR&   (    (    sI   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/mmtbx/command_line/rotalyze.pyt   run(   s6    								
t   __main__i   (   t
   __future__R    t   mmtbx.validation.rotalyzeR   t
   iotbx.philR   t   libtbx.utilsR   t   sysR   R   t   stdoutt   FalseR0   t   __name__t   argv(    (    (    sI   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/mmtbx/command_line/rotalyze.pyt   <module>   s   	