- added fill(9 and resize()
git-svn-id: http://moon:8086/svn/software/trunk/libsrc/cpp@941 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
@@ -11,8 +11,7 @@ Buffer<T>::Buffer(size_t capacity)
|
||||
, m_bid(0)
|
||||
, m_data{nullptr, nullptr}
|
||||
{
|
||||
m_data[0] = new T[capacity];
|
||||
m_data[1] = new T[capacity];
|
||||
resize(capacity);
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
@@ -22,6 +21,30 @@ Buffer<T>::~Buffer()
|
||||
delete [] m_data[1];
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
void Buffer<T>::resize(size_t size)
|
||||
{
|
||||
delete [] m_data[0];
|
||||
delete [] m_data[1];
|
||||
m_data[0] = new T[size];
|
||||
m_data[1] = new T[size];
|
||||
m_capacity = size;
|
||||
|
||||
clear();
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
void Buffer<T>::fill(T value)
|
||||
{
|
||||
T *pData = data_w();
|
||||
|
||||
for (m_wi=0; m_wi < capacity(); m_wi++)
|
||||
{
|
||||
pData[m_wi] = value;
|
||||
m_len++;
|
||||
}
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
size_t Buffer<T>::len()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user