Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

signfile.cpp

Go to the documentation of this file.
00001 /*
00002 PeRdr - PE file disassembler
00003 Copyright (C) 1999-2002 Frediano Ziglio
00004 -----
00005 
00006 This program is free software; you can redistribute it and/or modify
00007 it under the terms of the GNU General Public License as published by
00008 the Free Software Foundation; either version 2 of the License, or
00009 (at your option) any later version.
00010 
00011 This program is distributed in the hope that it will be useful,
00012 but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014 GNU General Public License for more details.
00015 
00016 You should have received a copy of the GNU General Public License
00017 along with this program; if not, write to the Free Software
00018 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00019 -----
00020 
00021 INFORMATION
00022   www: https://freddy77.tripod.com/perdr/
00023   e-mail: freddy77@angelfire.com
00024 */
00025 #include "global.h"
00026 #ifdef HAVE_HDRSTOP
00027 #pragma hdrstop
00028 #endif
00029 
00030 #include "signfile.hpp"
00031 
00032 CSignFile::CSignFile(const char* filename,const char* mode):CFile(filename,mode)
00033 {
00034 }
00035 
00036 char *CSignFile::ReadString() const
00037 {
00038   long start = Tell();
00039   char* res = CFile::ReadString();
00040   if (res)
00041     ranges.insert(range<long>(start,start+(strlen(res)+1)));
00042   return res;
00043 }
00044 
00045 char *CSignFile::ReadStringFlag(unsigned flag) const
00046 {
00047   long start = Tell();
00048   char* res = CFile::ReadStringFlag(flag);
00049   if (res)
00050     ranges.insert(range<long>(start,Tell() - start));
00051   return res;
00052 }
00053 
00054 void CSignFile::RawRead(void *ptr,size_t size) const
00055 {
00056   long start = Tell();
00057   CFile::RawRead(ptr,size);
00058   ranges.insert(range<long>(start,start+size));
00059 }

Generated on Mon Jan 13 22:20:34 2003 for perdr by doxygen1.2.15