CError CBufferReader::read<iviLink::CUid>(iviLink::CUid & val) { UInt32 uidSize = 0; CError err = read(uidSize); if (!err.isNoError()) return err; if (uidSize > mFullSize - mUsedSize) return CError(1, moduleName, CError::ERROR, "insufficient buffer size (from CUid write)"); err = val.fromByteArray(mpBuffer + mUsedSize, uidSize); mUsedSize += uidSize; return err; }