void CIndexedFile::Dump(void) { CChars sz; int i; filePos iSizeOnDisk; filePos iPos; BOOL bDurable; char pvData[80]; int iReadSize; iSizeOnDisk = mcFile.SizeFromFile(); bDurable = mcFile.mbDurable; mcFile.mbDurable = FALSE; sz.Init(); sz.Append("File Descriptor ("); sz.Append(miFileIndex); sz.Append(")\n------------------\n"); sz.Append("Primary Name: "); sz.Append(mszFileName); sz.AppendNewLine(); sz.Append("Rewrite Name: "); sz.Append(mszRewriteName); sz.AppendNewLine(); sz.Append("Durable: "); sz.AppendBool(bDurable); sz.AppendNewLine(); sz.Append("Datas (A:"); sz.Append(miNumDatas); sz.Append(", D:"); sz.Append(mcFile.miLength/miDataSize); sz.Append(", F:"); sz.Append(iSizeOnDisk/miDataSize); sz.Append(")\n\n"); sz.Append("Data on Disk\n------------\n"); iReadSize = 80; if (miDataSize < iReadSize) { iReadSize = miDataSize; } iPos = mcFile.Tell(); for (i = 0; i < iSizeOnDisk/miDataSize; i++) { mcFile.Read(i*miDataSize, pvData, iReadSize, 1); sz.AppendData(pvData, iReadSize); sz.AppendNewLine(); } sz.AppendNewLine(); mcFile.Seek(EFSO_SET, iPos); sz.Dump(); sz.Kill(); mcFile.Dump(); mcFile.mbDurable = bDurable; }
void CLogFile::Dump(void) { CChars sz; int i; char* pvData; CLogFileCommandWrite* psWrite; filePos iLen; sz.Init(); sz.Append("Log File (?"); sz.Append(")\n------------------\n"); sz.Append("Commands: "); sz.Append(macCommands.NumElements()); sz.AppendNewLine(); for (i = 0; i < macCommands.NumElements(); i++) { macCommands.Get(i, (void**)&pvData); sz.Append(" "); sz.Append("Write: ("); psWrite = (CLogFileCommandWrite*)pvData; sz.Append(psWrite->iPosition); sz.Append(", "); sz.Append(psWrite->iSize); sz.Append(") "); pvData = (char*)RemapSinglePointer(psWrite, sizeof(CLogFileCommandWrite)); iLen = psWrite->iSize; sz.AppendData(pvData, 80); sz.AppendNewLine(); } sz.AppendNewLine(); sz.Dump(); sz.Kill(); }
void CIndexedMemory::Dump(void) { int iNumElements; int i; SIndexedMemory* psIndexedMemory; void* pvDest; CChars sz; sz.Init(); iNumElements = mcDatas.NumElements(); sz.Append("Transaction Data ("); sz.Append(iNumElements); sz.Append(") (Memory)\n-----------------\n"); for (i = 0; i < iNumElements; i++) { mcDatas.Get(i, (void**)&psIndexedMemory); pvDest = RemapSinglePointer(psIndexedMemory, sizeof(SIndexedMemory)); sz.Append("Index["); sz.Append((int)psIndexedMemory->oi); sz.Append("] Size["); sz.Append((int)psIndexedMemory->uiSize); sz.Append("] "); if (psIndexedMemory->uiSize > 0) { sz.Append("\""); sz.AppendData((char*)pvDest, 80); sz.Append("\" "); } if (psIndexedMemory->IsRemoved()) { sz.Append("(Removed)"); } sz.Append("\n"); } sz.AppendNewLine(); sz.Dump(); sz.Kill(); }
void CTransientIndexedFile::Dump(void) { int iNumElements; int i; SIndexedMemory* psIndexedMemory; void* pvDest; CChars sz; sz.Init(); iNumElements = NumDatas(); sz.Append("Transaction Data ("); sz.Append(iNumElements); sz.Append(") (Huge)\n-----------------\n"); for (i = 0; i < iNumElements; i++) { psIndexedMemory = GetIndexedData(i); pvDest = GetData(psIndexedMemory); sz.Append("Index["); sz.Append((int)psIndexedMemory->oi); sz.Append("] Size["); sz.Append((int)psIndexedMemory->uiSize); sz.Append("] "); if (psIndexedMemory->uiSize > 0) { sz.Append("\""); sz.AppendData((char*)pvDest, 80); sz.Append("\" "); } if (psIndexedMemory->IsRemoved()) { sz.Append("(Removed)"); } sz.Append("\n"); } sz.AppendNewLine(); sz.Dump(); sz.Kill(); }