11 #ifndef __RD_BITVECT_H__ 12 #define __RD_BITVECT_H__ 28 virtual bool setBit(
const unsigned int which) = 0;
30 virtual bool unsetBit(
const unsigned int which) = 0;
32 virtual bool getBit(
const unsigned int which)
const = 0;
34 virtual unsigned int getNumBits()
const = 0;
36 virtual unsigned int getNumOnBits()
const = 0;
38 virtual unsigned int getNumOffBits()
const = 0;
40 virtual void getOnBits(
IntVect& v)
const = 0;
42 virtual void clearBits() = 0;
55 void initFromText(
const char* data,
const unsigned int dataLen,
56 bool isBase64 =
false,
bool allowOldFormat =
false);
59 virtual std::string toString()
const = 0;
61 virtual bool operator[](
const unsigned int which)
const = 0;
62 unsigned int size()
const {
return getNumBits(); }
65 virtual void _initForSize(
const unsigned int size) = 0;
DoubleVect::iterator DoubleVectIter
IntVect::iterator IntVectIter
#define RDKIT_DATASTRUCTS_EXPORT
const int ci_BITVECT_VERSION
version number to use in pickles
unsigned int size() const
std::vector< double > DoubleVect
std::vector< int > IntVect
Abstract base class for storing BitVectors.