#include "stdafx.h"
|
#include "Data.h"
|
|
|
namespace BEQ {
|
CData::CData()
|
{
|
m_pBuffer = nullptr;
|
m_nBufferSize = 0;
|
m_nDataLen = 0;
|
}
|
|
CData::CData(int nInitSize)
|
{
|
m_pBuffer = new char[nInitSize];
|
m_nBufferSize = nInitSize;
|
m_nDataLen = 0;
|
}
|
|
CData::~CData()
|
{
|
if (m_pBuffer != nullptr) {
|
delete[] m_pBuffer;
|
}
|
}
|
|
void CData::init(int nInitSize)
|
{
|
m_pBuffer = new char[nInitSize];
|
m_nBufferSize = nInitSize;
|
m_nDataLen = 0;
|
}
|
|
int CData::append(const char* pData, int len)
|
{
|
if (m_nDataLen + len > m_nBufferSize) {
|
return -1;
|
}
|
|
memcpy(&m_pBuffer[m_nDataLen], pData, len);
|
m_nDataLen += len;
|
return (int)m_nDataLen;
|
}
|
|
void CData::clear()
|
{
|
m_nDataLen = 0;
|
}
|
}
|