Mercurial > hg > svcore
diff base/ResizeableBitset.h @ 546:95391b480e17
* Make use of peak cache in spectrogram
author | Chris Cannam |
---|---|
date | Wed, 04 Feb 2009 15:03:42 +0000 |
parents | 146eb9e35baa |
children | 1469caaa8e67 |
line wrap: on
line diff
--- a/base/ResizeableBitset.h Wed Feb 04 13:33:50 2009 +0000 +++ b/base/ResizeableBitset.h Wed Feb 04 15:03:42 2009 +0000 @@ -24,7 +24,7 @@ public: ResizeableBitset() : m_bits(0) { } - ResizeableBitset(size_t size) : m_bits(new std::vector<uint8_t>) { + ResizeableBitset(size_t size) : m_bits(new std::vector<uint8_t>), m_size(size) { m_bits->assign((size >> 3) + 1, 0); } ResizeableBitset(const ResizeableBitset &b) { @@ -46,6 +46,7 @@ m_bits = new std::vector<uint8_t>; } m_bits->assign((bits >> 3) + 1, 0); + m_size = bits; } bool get(size_t column) const { @@ -63,9 +64,14 @@ void copy(size_t source, size_t dest) { get(source) ? set(dest) : reset(dest); } + + size_t size() const { + return m_size; + } private: std::vector<uint8_t> *m_bits; + size_t m_size; };