Initial revision

git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2 726aef4b-f618-498e-8847-2d620e286838
This commit is contained in:
prozacx
2004-08-24 00:08:51 +00:00
parent 71a0088bea
commit 538d3ece4e
41 changed files with 10362 additions and 0 deletions
+52
View File
@@ -0,0 +1,52 @@
#include "Buffer.h"
CBufLine::CBufLine(const string& sPre, const string& sPost) {
m_sPre = sPre;
m_sPost = sPost;
}
CBufLine::~CBufLine() {}
void CBufLine::GetLine(const string& sTarget, string& sRet) {
sRet = m_sPre + sTarget + m_sPost;
}
CBuffer::CBuffer(unsigned int uLineCount) {
m_uLineCount = uLineCount;
}
CBuffer::~CBuffer() {}
int CBuffer::AddLine(const string& sPre, const string& sPost) {
if (!m_uLineCount) {
return 0;
}
if (size() >= m_uLineCount) {
erase(begin());
}
push_back(CBufLine(sPre, sPost));
return size();
}
bool CBuffer::GetLine(const string& sTarget, string& sRet, unsigned int uIdx) {
if (uIdx >= size()) {
return false;
}
(*this)[uIdx].GetLine(sTarget, sRet);
return true;
}
bool CBuffer::GetNextLine(const string& sTarget, string& sRet) {
sRet = "";
if (!size()) {
return false;
}
begin()->GetLine(sTarget, sRet);
erase(begin());
return true;
}