ó
a#nSc           @   s/   d  Z  d e f d „  ƒ  YZ e d k r+ n  d S(   s    #DOC


t   BitEnsemblec           B   sP   e  Z d  Z d d „ Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 RS(	   s[     used to store a collection of bits and score
  BitVects (or signatures) against them.

  c         C   s+   | d  k	 r t | ƒ |  _ n	 g  |  _ d  S(   N(   t   Nonet   listt   _bits(   t   selft   bits(    (    s_   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/rdkit/DataStructs/BitEnsemble.pyt   __init__   s    c         C   s   t  | ƒ |  _ d  S(   N(   R   R   (   R   R   (    (    s_   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/rdkit/DataStructs/BitEnsemble.pyt   SetBits   s    c         C   s   |  j  j | ƒ d  S(   N(   R   t   append(   R   t   bit(    (    s_   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/rdkit/DataStructs/BitEnsemble.pyt   AddBit   s    c         C   s   t  |  j ƒ S(   N(   t   tupleR   (   R   (    (    s_   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/rdkit/DataStructs/BitEnsemble.pyt   GetBits   s    c         C   s   t  |  j ƒ S(   N(   t   lenR   (   R   (    (    s_   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/rdkit/DataStructs/BitEnsemble.pyt
   GetNumBits    s    c         C   sF   | j  ƒ  } d } x- |  j ƒ  D] } | | k r | d 7} q q W| S(   s     other must support GetOnBits() i    i   (   t	   GetOnBitsR   (   R   t   othert   oblt   cntR	   (    (    s_   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/rdkit/DataStructs/BitEnsemble.pyt   ScoreWithOnBits#   s     c         C   s8   d } x+ |  j  ƒ  D] } | | r | d 7} q q W| S(   s"    other must support __getitem__() i    i   (   R   (   R   R   R   R	   (    (    s_   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/rdkit/DataStructs/BitEnsemble.pyt   ScoreWithIndex,   s
    
 N(   t   __name__t
   __module__t   __doc__R   R   R   R
   R   R   R   R   (    (    (    s_   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/rdkit/DataStructs/BitEnsemble.pyR       s   						t   __main__N(   R   t   objectR    R   (    (    (    s_   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/rdkit/DataStructs/BitEnsemble.pyt   <module>   s   $