KDevelop API Documentation

chmfile.h

Go to the documentation of this file.
00001 /*  This library is free software; you can redistribute it and/or
00002     modify it under the terms of the GNU Library General Public
00003     License as published by the Free Software Foundation; either
00004     version 2 of the License, or (at your option) any later version.
00005 
00006     This library is distributed in the hope that it will be useful,
00007     but WITHOUT ANY WARRANTY; without even the implied warranty of
00008     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00009     Library General Public License for more details.
00010 
00011     You should have received a copy of the GNU Library General Public License
00012     along with this library; see the file COPYING.LIB.  If not, write to
00013     the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
00014     Boston, MA 02111-1307, USA.
00015 */
00016 
00017 #ifndef __chmfile_h__
00018 #define __chmfile_h__
00019 
00020 #include <cstdio>
00021 #include <qmap.h>
00022 #include <qstring.h>
00023 
00024 class QFile;
00025 
00026 struct ChmDirTableEntry
00027 {
00028     ChmDirTableEntry() : section(0), offset(0), length(0) {}
00029     ChmDirTableEntry( uint s, uint o, uint l )
00030     : section(s), offset(o), length(l) {}
00031 
00032     uint section;
00033     uint offset;
00034     uint length;
00035 };
00036 
00037 typedef QMap<QString, ChmDirTableEntry> ChmDirectoryMap;
00038 
00039 class Chm
00040 {
00041 public:
00042     bool read( const QString&, ChmDirectoryMap&, QByteArray& ) const;
00043 
00044 private:
00045     bool getChunk( QFile&, uint, ChmDirectoryMap& ) const;
00046     uint getEncInt( QFile&, uint& ) const;
00047     uint getName( QFile&, QString& ) const;
00048     uint getIntel32( QFile& ) const;
00049     uint getIntel64( QFile& ) const;
00050 };
00051 
00052 #endif // __chmfile_h__
00053 
KDE Logo
This file is part of the documentation for KDevelop Version 3.1.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Tue Feb 22 09:22:39 2005 by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2003