本文整理汇总了C++中PDBGKM_SERVICE_TABLE::pfnGetStreamOffset方法的典型用法代码示例。如果您正苦于以下问题:C++ PDBGKM_SERVICE_TABLE::pfnGetStreamOffset方法的具体用法?C++ PDBGKM_SERVICE_TABLE::pfnGetStreamOffset怎么用?C++ PDBGKM_SERVICE_TABLE::pfnGetStreamOffset使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PDBGKM_SERVICE_TABLE
的用法示例。
在下文中一共展示了PDBGKM_SERVICE_TABLE::pfnGetStreamOffset方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PDumpWriteILock
static IMG_BOOL PDumpWriteILock(PDBG_STREAM psStream, IMG_UINT8 *pui8Data, IMG_UINT32 ui32Count, IMG_UINT32 ui32Flags)
{
IMG_UINT32 ui32Written = 0;
IMG_UINT32 ui32Off = 0;
if ((psStream == IMG_NULL) || PDumpSuspended() || ((ui32Flags & PDUMP_FLAGS_NEVER) != 0))
{
return IMG_TRUE;
}
if (psStream == gsDBGPdumpState.psStream[PDUMP_STREAM_PARAM2])
{
IMG_UINT32 ui32ParamOutPos = gpfnDbgDrv->pfnGetStreamOffset(gsDBGPdumpState.psStream[PDUMP_STREAM_PARAM2]);
if (ui32ParamOutPos + ui32Count > MAX_FILE_SIZE)
{
if ((gsDBGPdumpState.psStream[PDUMP_STREAM_SCRIPT2] && PDumpWriteString2("\r\n-- Splitting pdump output file\r\n\r\n", ui32Flags)))
{
DbgSetMarker(gsDBGPdumpState.psStream[PDUMP_STREAM_PARAM2], ui32ParamOutPos);
gsDBGPdumpState.ui32ParamFileNum++;
}
}
}
while (((IMG_UINT32) ui32Count > 0) && (ui32Written != 0xFFFFFFFF))
{
ui32Written = DbgWrite(psStream, &pui8Data[ui32Off], ui32Count, ui32Flags);
if (ui32Written == 0)
{
OSReleaseThreadQuanta();
}
if (ui32Written != 0xFFFFFFFF)
{
ui32Off += ui32Written;
ui32Count -= ui32Written;
}
}
if (ui32Written == 0xFFFFFFFF)
{
return IMG_FALSE;
}
return IMG_TRUE;
}
示例2: PDumpOSGetStreamOffset
/*!
* \name PDumpOSGetStreamOffset
*/
IMG_UINT32 PDumpOSGetStreamOffset(IMG_UINT32 ePDumpStream)
{
PDBG_STREAM psStream = gsDBGPdumpState.psStream[ePDumpStream];
return gpfnDbgDrv->pfnGetStreamOffset(psStream);
}