本文整理汇总了C++中SharedReadPtr::GetROPrpBuffer方法的典型用法代码示例。如果您正苦于以下问题:C++ SharedReadPtr::GetROPrpBuffer方法的具体用法?C++ SharedReadPtr::GetROPrpBuffer怎么用?C++ SharedReadPtr::GetROPrpBuffer使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SharedReadPtr
的用法示例。
在下文中一共展示了SharedReadPtr::GetROPrpBuffer方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: FrmwkEx
void
PRPOffsetSinglePgSingleBlk_r10b::VerifyDataPattern(SharedReadPtr readCmd,
DataPattern dataPattern, uint64_t wrVal)
{
LOG_NRM("Compare read vs written data to verify");
uint16_t mWrVal = (uint16_t)wrVal;
if (dataPattern == DATAPAT_INC_16BIT) {
const uint16_t *rdBuffPtr = (const uint16_t *)readCmd->GetROPrpBuffer();
for (uint64_t i = 0; i <
(readCmd->GetPrpBufferSize() / sizeof(uint16_t)); i++) {
if (*rdBuffPtr++ != mWrVal++) {
readCmd->Dump(
FileSystem::PrepDumpFile(mGrpName, mTestName,
"ReadPayload"),
"Data read from media miscompared from written");
throw FrmwkEx(HERE, "Read data mismatch for 16bit inc prp data "
"read ptr: 0x%08X, read value: 0x%02X, write value: 0x%02X",
rdBuffPtr, *rdBuffPtr, mWrVal);
}
}
// Check if meta data exists and then compare meta buffer data.
const uint16_t *rdMetaPtr = (const uint16_t *)readCmd->GetMetaBuffer();
mWrVal = (uint16_t)wrVal;
if (rdMetaPtr) {
LOG_NRM("Compare read vs written meta data to verify");
for (uint64_t i = 0; i <
(readCmd->GetMetaBufferSize() / sizeof(uint16_t)); i++) {
if (*rdMetaPtr++ != mWrVal++) {
readCmd->Dump(
FileSystem::PrepDumpFile(mGrpName, mTestName,
"MetaPayload"),
"Meta Data read from media miscompared from written");
throw FrmwkEx(HERE,
"Read data mismatch for 16bit inc meta data "
"read ptr: 0x%08X, read val: 0x%02X, write val: 0x%02X",
rdBuffPtr, *rdBuffPtr, mWrVal);
}
}
}
} else if (dataPattern == DATAPAT_CONST_8BIT) {
const uint8_t *rdBuffPtr = readCmd->GetROPrpBuffer();
for (uint64_t i = 0; i <
(readCmd->GetPrpBufferSize() / sizeof(uint8_t)); i++) {
if (*rdBuffPtr++ != (uint8_t)wrVal) {
readCmd->Dump(
FileSystem::PrepDumpFile(mGrpName, mTestName,
"ReadPayload"),
"Data read from media miscompared from written");
throw FrmwkEx(HERE, "Read data mismatch for 8bit const data "
"read ptr: 0x%08X, read value: 0x%02X, write value: 0x%02X",
rdBuffPtr, *rdBuffPtr, wrVal);
}
}
// Check if meta data exists and then compare meta buffer data.
const uint8_t *rdMetaPtr = readCmd->GetMetaBuffer();
if (rdMetaPtr) {
LOG_NRM("Compare read vs written meta data to verify");
for (uint64_t i = 0; i <
(readCmd->GetMetaBufferSize() / sizeof(uint8_t)); i++) {
if (*rdMetaPtr++ != (uint8_t)wrVal) {
readCmd->Dump(
FileSystem::PrepDumpFile(mGrpName, mTestName,
"MetaPayload"),
"Meta Data read from media miscompared from written");
throw FrmwkEx(HERE,
"Read data mismatch for 8bit const meta data "
"read ptr: 0x%08X, read val: 0x%02X, write val: 0x%02X",
rdBuffPtr, *rdBuffPtr, wrVal);
}
}
}
}
}