DataStructs.cDataStructs.SparseBitVect

Package DataStructs :: Module cDataStructs :: Class SparseBitVect |
[hide private]
[frames] | no frames]

# Class SparseBitVect

     object --+
              |
    ??.instance --+
                  |
                 SparseBitVect

    A class to store sparse bit vectors.

    This class is most useful for situations where the size of the vector
    is large and relatively few bits are set

    For smaller or denser vectors, the _ExplicitBitVect_ class is much faster.

    As you would expect, _SparseBitVects_ support a set of binary operations
    so you can do things like:
      bv3 = bv1 & bv2  (bitwise and)
      bv3 = bv1 | bv2  (bitwise or)
      bv3 = bv1 ^ bv2  (bitwise xor)
      bv3 = ~bv1       (bitwise negation) NOTE: this operation is likely
                        to be VERY slow and inefficient.

    Bits can be set and read using either the Set/UnsetBit() and GetBit() methods
    or by indexing (i.e. bv[i] = 1 or if bv[i]).

Instance Methods | [hide private]
FromBase64(...) FromBase64( (SparseBitVect)arg1, (str)arg2) -> None : Initializes the vector from a base64 string (the Daylight encoding). |
GetBit(...) GetBit( (SparseBitVect)arg1, (int)arg2) -> bool : Returns the value of a bit. |
GetNumBits(...) GetNumBits( (SparseBitVect)arg1) -> int : Returns the number of bits in the vector (the vector's size). |
GetNumOffBits(...) GetNumOffBits( (SparseBitVect)arg1) -> int : Returns the number of off bits. |
GetNumOnBits(...) GetNumOnBits( (SparseBitVect)arg1) -> int : Returns the number of on bits. |
GetOnBits(...) GetOnBits( (SparseBitVect)arg1) -> _vecti : Returns a tuple containing IDs of the on bits. |
SetBit(...) SetBit( (SparseBitVect)arg1, (int)arg2) -> bool : Turns on a particular bit on. |
SetBitsFromList(...) SetBitsFromList( (SparseBitVect)arg1, (AtomPairsParameters)arg2) -> None : Turns on a set of bits. |
ToBase64(...) ToBase64( (SparseBitVect)arg1) -> str : Converts the vector to a base64 string (the Daylight encoding). |
ToBinary(...) ToBinary( (SparseBitVect)arg1) -> str : Returns a binary string representation of the vector. |
ToBitString(...) BitVectToText( (SparseBitVect)arg1) -> str : C++ signature : std::string BitVectToText(SparseBitVect) BitVectToText( (ExplicitBitVect)arg1) -> str : Returns a string of zeros and ones representing the bit vector. | source code
UnSetBit(...) UnSetBit( (SparseBitVect)arg1, (int)arg2) -> bool : Turns on a particular bit off. |
__and__(...) __and__( (SparseBitVect)arg1, (SparseBitVect)arg2) -> object :... |
__eq__(...) __eq__( (SparseBitVect)arg1, (SparseBitVect)arg2) -> object :... |
__getinitargs__(...) __getinitargs__( (SparseBitVect)arg1) -> tuple :... |
__getitem__(...) __getitem__( (SparseBitVect)arg1, (int)arg2) -> int :... |
__init__(...) __init__( (object)arg1, (int)arg2) -> None :... |
__invert__(...) __invert__( (SparseBitVect)arg1) -> object :... |
__len__(...) __len__( (SparseBitVect)arg1) -> int :... |
__ne__(...) __ne__( (SparseBitVect)arg1, (SparseBitVect)arg2) -> object :... |
__or__(...) __or__( (SparseBitVect)arg1, (SparseBitVect)arg2) -> object :... |
__reduce__(...) helper for pickle |
__setitem__(...) __setitem__( (SparseBitVect)arg1, (int)arg2, (int)arg3) -> int :... |
__xor__(...) __xor__( (SparseBitVect)arg1, (SparseBitVect)arg2) -> object :... |
Inherited from `unreachable.instance`: `__new__` Inherited from `object`: `__delattr__`, `__getattribute__`, `__hash__`, `__reduce_ex__`, `__repr__`, `__setattr__`, `__str__`

Class Variables | [hide private]
| __instance_size__ = `20`
| __safe_for_unpickling__ = `True`

Properties | [hide private]
Inherited from `object`: `__class__`

Method Details | [hide private]

### FromBase64(...) |
    FromBase64( (SparseBitVect)arg1, (str)arg2) -> None :
        Initializes the vector from a base64 string (the Daylight encoding).

        C++ signature :
            void FromBase64(SparseBitVect {lvalue},std::string)

### GetBit(...) |
    GetBit( (SparseBitVect)arg1, (int)arg2) -> bool :
        Returns the value of a bit.

        C++ signature :
            bool GetBit(SparseBitVect {lvalue},unsigned int)

### GetNumBits(...) |
    GetNumBits( (SparseBitVect)arg1) -> int :
        Returns the number of bits in the vector (the vector's size).

        C++ signature :
            unsigned int GetNumBits(SparseBitVect {lvalue})

### GetNumOffBits(...) |
    GetNumOffBits( (SparseBitVect)arg1) -> int :
        Returns the number of off bits.

        C++ signature :
            unsigned int GetNumOffBits(SparseBitVect {lvalue})

### GetNumOnBits(...) |
    GetNumOnBits( (SparseBitVect)arg1) -> int :
        Returns the number of on bits.

        C++ signature :
            unsigned int GetNumOnBits(SparseBitVect {lvalue})

### GetOnBits(...) |
    GetOnBits( (SparseBitVect)arg1) -> _vecti :
        Returns a tuple containing IDs of the on bits.

        C++ signature :
            std::vector<int, std::allocator<int> > GetOnBits(SparseBitVect)

### SetBit(...) |
    SetBit( (SparseBitVect)arg1, (int)arg2) -> bool :
        Turns on a particular bit on.  Returns the original state of the bit.

        C++ signature :
            bool SetBit(SparseBitVect {lvalue},unsigned int)

### SetBitsFromList(...) |
    SetBitsFromList( (SparseBitVect)arg1, (AtomPairsParameters)arg2) -> None :
        Turns on a set of bits.  The argument should be a tuple or list of bit ids.

        C++ signature :
            void SetBitsFromList(SparseBitVect*,boost::python::api::object)

### ToBase64(...) |
    ToBase64( (SparseBitVect)arg1) -> str :
        Converts the vector to a base64 string (the Daylight encoding).

        C++ signature :
            std::string ToBase64(SparseBitVect {lvalue})

### ToBinary(...) |
    ToBinary( (SparseBitVect)arg1) -> str :
        Returns a binary string representation of the vector.

        C++ signature :
            std::string ToBinary(SparseBitVect {lvalue})

### ToBitString(...) | source code
    BitVectToText( (SparseBitVect)arg1) -> str :

        C++ signature :
            std::string BitVectToText(SparseBitVect)

    BitVectToText( (ExplicitBitVect)arg1) -> str :
        Returns a string of zeros and ones representing the bit vector.

        C++ signature :
            std::string BitVectToText(ExplicitBitVect)

### UnSetBit(...) |
    UnSetBit( (SparseBitVect)arg1, (int)arg2) -> bool :
        Turns on a particular bit off.  Returns the original state of the bit.

        C++ signature :
            bool UnSetBit(SparseBitVect {lvalue},unsigned int)

### __and__(...) (And operator) |
    __and__( (SparseBitVect)arg1, (SparseBitVect)arg2) -> object :

        C++ signature :
            _object* __and__(SparseBitVect {lvalue},SparseBitVect)

### __eq__(...) (Equality operator) |
    __eq__( (SparseBitVect)arg1, (SparseBitVect)arg2) -> object :

        C++ signature :
            _object* __eq__(SparseBitVect {lvalue},SparseBitVect)

### __getinitargs__(...) |
    __getinitargs__( (SparseBitVect)arg1) -> tuple :

        C++ signature :
            boost::python::tuple __getinitargs__(SparseBitVect)

### __getitem__(...) (Indexing operator) |
    __getitem__( (SparseBitVect)arg1, (int)arg2) -> int :

        C++ signature :
            int __getitem__(SparseBitVect,int)

### __init__(...) (Constructor) |
    __init__( (object)arg1, (int)arg2) -> None :

        C++ signature :
            void __init__(_object*,unsigned int)

    __init__( (object)arg1, (str)arg2) -> None :

        C++ signature :
            void __init__(_object*,std::string)
Overrides: object.__init__

### __invert__(...) |
    __invert__( (SparseBitVect)arg1) -> object :

        C++ signature :
            _object* __invert__(SparseBitVect {lvalue})

### __len__(...) (Length operator) |
    __len__( (SparseBitVect)arg1) -> int :

        C++ signature :
            unsigned int __len__(SparseBitVect {lvalue})

### __ne__(...) |
    __ne__( (SparseBitVect)arg1, (SparseBitVect)arg2) -> object :

        C++ signature :
            _object* __ne__(SparseBitVect {lvalue},SparseBitVect)

### __or__(...) (Or operator) |
    __or__( (SparseBitVect)arg1, (SparseBitVect)arg2) -> object :

        C++ signature :
            _object* __or__(SparseBitVect {lvalue},SparseBitVect)

### __reduce__(...) |
    helper for pickle
Overrides: object.__reduce__ (inherited documentation)

### __setitem__(...) (Index assignment operator) |
    __setitem__( (SparseBitVect)arg1, (int)arg2, (int)arg3) -> int :

        C++ signature :
            int __setitem__(SparseBitVect {lvalue},int,int)

### __xor__(...) |
    __xor__( (SparseBitVect)arg1, (SparseBitVect)arg2) -> object :

        C++ signature :
            _object* __xor__(SparseBitVect {lvalue},SparseBitVect)