int AffxByteArray::append(const AffxString& srcIn) { AffxString src = srcIn; int nOldSize = m_nSize; setSize(m_nSize + (int)src.length()); memcpy(m_pData + nOldSize, src.c_str(), src.length() * sizeof(char)); return nOldSize; }
bool AffxByteArray::equals(const AffxString &str) const { bool bEqual = false; int iThisSize = getSize(); int iThatSize = (int)str.length(); if (iThisSize == iThatSize) { if ((iThisSize == 0) && (iThatSize == 0)) {bEqual = true;} else { for (int i = 0; (i < iThisSize); i++) { if (getAt(i) == str.getAt(i)) bEqual = true; else { bEqual = false; break; } } } } return bEqual; }
AffxString CNReporter::prepareAscii(const AffxString& str, int iLength) { AffxString strPrepared = str; int iActualLength = (int)strPrepared.length(); strPrepared.padBlanks(iLength); strPrepared.setAt(iActualLength, 0); return strPrepared; }
int AffxByteArray::compareTo(const AffxString & that) const { int iResult = 0; int iLength = __minimum(this->m_nSize, (int)that.length()); bool bEqual = true; for (int iIndex = 0; (iIndex < iLength); iIndex++) { if (this->m_pData[iIndex] != that.charAt(iIndex)) { bEqual = false; iResult = (this->m_pData[iIndex] - that.charAt(iIndex)); break; } } if (bEqual) {iResult = (this->m_nSize - (int)that.length());} return iResult; }
void CNReporter::loadBuffer(char* pBuffer, int& iIndex, AffxString& str, int iLength) { if (iLength == -1) { iLength = str.length(); } unsigned int ui = htonl(iLength); memcpy((void*)(pBuffer + iIndex), (void*)&ui, sizeof(unsigned int)); iIndex += sizeof(unsigned int); memcpy((void*)(pBuffer + iIndex), str.c_str(), iLength); iIndex += iLength; }
bool AffxByteArray::equalsIgnoreCase(const AffxString &str) { bool bEqual = false; int iThisSize = getSize(); int iThatSize = (int)str.length(); if (iThisSize == iThatSize) { for (int i = 0; (i < iThisSize); i++) { if (getAt(i) >= 'A' && getAt(i) <= 'Z') { if ((getAt(i) == str.getAt(i)) || (getAt(i) + ' ' == str.getAt(i))) bEqual = true; else { bEqual = false; break; } } else if (getAt(i) >= 'a' && getAt(i) <= 'z') { if ((getAt(i) == str.getAt(i)) || (getAt(i) - ' ' == str.getAt(i))) bEqual = true; else { bEqual = false; break; } } else if (getAt(i) == str.getAt(i)) bEqual = true; else { bEqual = false; break; } } } return bEqual; }