|
libsax 7.2
|
00001 /************** 00002 FILE : file.h 00003 *************** 00004 PROJECT : SaX2 - library interface [header] 00005 : 00006 AUTHOR : Marcus Schäfer <ms@suse.de> 00007 : 00008 BELONGS TO : SaX2 - SuSE advanced X11 configuration 00009 : 00010 : 00011 DESCRIPTION : native C++ class library to access SaX2 00012 : functionality. Easy to use interface for 00013 : //.../ 00014 : - importing/exporting X11 configurations 00015 : - modifying/creating X11 configurations 00016 : --- 00017 : 00018 : 00019 STATUS : Status: Development 00020 **************/ 00021 #ifndef SAX_FILE_H 00022 #define SAX_FILE_H 1 00023 00024 //==================================== 00025 // Includes 00026 //------------------------------------ 00027 #include <qfile.h> 00028 #include <q3dict.h> 00029 #include <qstringlist.h> 00030 00031 #include "exception.h" 00032 00033 namespace SaX { 00034 //==================================== 00035 // Defines 00036 //------------------------------------ 00037 #define MAX_LINE_LENGTH 8192 00038 00039 //==================================== 00040 // Interface class for dlopen ability 00041 //------------------------------------ 00049 class SaXFileIF : public SaXException { 00050 public: 00051 virtual Q3Dict<QString> readDict ( void ) = 0; 00052 virtual Q3Dict<QString> getDataDict ( void ) = 0; 00053 00054 public: 00055 virtual ~SaXFileIF ( void ) { } 00056 }; 00057 00058 //==================================== 00059 // Class SaXFile 00060 //------------------------------------ 00078 class SaXFile : public SaXFileIF { 00079 private: 00080 QFile* mHandle; 00081 Q3Dict<QString> mDict; 00082 00083 private: 00084 void fileOpen ( void ); 00085 00086 public: 00087 Q3Dict<QString> readDict ( void ); 00088 Q3Dict<QString> getDataDict ( void ); 00089 00090 public: 00091 SaXFile ( const QString& ); 00092 }; 00093 } // end namespace 00094 #endif
1.7.3