kconfigrawbackend.h

Go to the documentation of this file.
00001 /*
00002    This file is part of the KDE games library
00003    Copyright (C) 2003 Nicolas Hadacek <hadacek@kde.org>
00004 
00005    This library is free software; you can redistribute it and/or
00006    modify it under the terms of the GNU Library General Public
00007    License version 2 as published by the Free Software Foundation.
00008 
00009    This library is distributed in the hope that it will be useful,
00010    but WITHOUT ANY WARRANTY; without even the implied warranty of
00011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012    Library General Public License for more details.
00013 
00014    You should have received a copy of the GNU Library General Public License
00015    along with this library; see the file COPYING.LIB.  If not, write to
00016    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00017    Boston, MA 02110-1301, USA.
00018 */
00019 
00020 #ifndef _KCONFIGRAWBACKEND_H
00021 #define _KCONFIGRAWBACKEND_H
00022 
00023 #include <qfile.h>
00024 
00025 #include <kconfigbackend.h>
00026 #include <ksimpleconfig.h>
00027 
00028 
00029 class KConfigRawBackEnd : public KConfigINIBackEnd
00030 {
00031 public:
00032     KConfigRawBackEnd(KConfigBase *_config, int fd);
00033     ~KConfigRawBackEnd();
00034 
00035     bool parseConfigFiles();
00036 
00037     void sync(bool bMerge = true);
00038 
00039 private:
00040     int   _fd;
00041     FILE *_stream;
00042     QFile _file;
00043 
00044     class KConfigRawBackEndPrivate;
00045     KConfigRawBackEndPrivate *d;
00046 };
00047 
00048 class KRawConfig : public KSimpleConfig
00049 {
00050     Q_OBJECT
00051 public:
00052     KRawConfig(int fd, bool readOnly)
00053         : KSimpleConfig(new KConfigRawBackEnd(this, fd), readOnly) {}
00054 };
00055 
00056 
00057 #endif

Generated on Wed Aug 23 18:04:17 2006 for libkdegames by  doxygen 1.4.6