/* Copyright (C) 2003 MySQL AB This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #include bool printFSREADWRITEREQ(FILE * output, const Uint32 * theData, Uint32 len, Uint16 receiverBlockNo){ bool ret = true; const FsReadWriteReq * const sig = (FsReadWriteReq *) theData; fprintf(output, " UserPointer: %d\n", sig->userPointer); fprintf(output, " FilePointer: %d\n", sig->filePointer); fprintf(output, " UserReference: H\'%.8x", sig->userReference); fprintf(output, " Operation flag: H\'%.8x (", sig->operationFlag); if (sig->getSyncFlag(sig->operationFlag) == true) fprintf(output, "Sync,"); else fprintf(output, "No sync,"); fprintf(output, " Format="); switch(sig->getFormatFlag(sig->operationFlag)){ case FsReadWriteReq::fsFormatListOfPairs: fprintf(output, "List of pairs)\n"); break; case FsReadWriteReq::fsFormatArrayOfPages: fprintf(output, "Array of pages)\n"); break; case FsReadWriteReq::fsFormatListOfMemPages: fprintf(output, "List of mem pages)\n"); break; default: fprintf(output, "fsFormatMax not handled\n"); ret = false; break; } fprintf(output, " varIndex: %d\n", sig->varIndex); fprintf(output, " numberOfPages: %d\n", sig->numberOfPages); fprintf(output, " pageData: "); switch(sig->getFormatFlag(sig->operationFlag)){ case FsReadWriteReq::fsFormatListOfPairs: for (unsigned int i = 0; i < sig->numberOfPages*2; i += 2){ fprintf(output, " H\'%.8x, H\'%.8x\n", sig->data.pageData[i], sig->data.pageData[i + 1]); } break; case FsReadWriteReq::fsFormatArrayOfPages: fprintf(output, " H\'%.8x, H\'%.8x\n", sig->data.pageData[0], sig->data.pageData[1]); break; case FsReadWriteReq::fsFormatListOfMemPages: for (unsigned int i = 0; i < (sig->numberOfPages + 1); i++){ fprintf(output, " H\'%.8x, ", sig->data.pageData[i]); } break; default: fprintf(output, "Impossible event\n"); } fprintf(output, "\n"); return ret; }