export.h

00001 /**************
00002 FILE          : export.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_EXPORT_H
00022 #define SAX_EXPORT_H 1
00023 
00024 //====================================
00025 // Includes...
00026 //------------------------------------
00027 #include <qfile.h>
00028 #include <errno.h>
00029 #include <sys/types.h>
00030 #include <sys/stat.h>
00031 #include <fcntl.h>
00032 #include <sys/file.h>
00033 
00034 #include "import.h"
00035 
00036 namespace SaX {
00037 //====================================
00038 // Defines...
00039 //------------------------------------
00040 #define CONFDIR         "/var/lib/sax/"
00041 #define ISAXCARD        CONFDIR "card"
00042 #define ISAXDESKTOP     CONFDIR "desktop"
00043 #define ISAXINPUT       CONFDIR "input"
00044 #define ISAXKEYBOARD    CONFDIR "keyboard"
00045 #define ISAXLAYOUT      CONFDIR "layout"
00046 #define ISAXPATH        CONFDIR "path"
00047 #define ISAXEXTENSIONS  CONFDIR "extensions"
00048 
00049 //====================================
00050 // Interface class for dlopen ability
00051 //------------------------------------
00059 class SaXExportIF : public SaXException {
00060         public:
00061         virtual bool doExport (void) = 0;
00062 
00063         public:
00064         virtual ~SaXExportIF ( void ) { }
00065 };
00066 //====================================
00067 // Class SaXExport...
00068 //------------------------------------
00091 class SaXExport : public SaXExportIF {
00092         private:
00093         SaXException* mTo;
00094 
00095         protected:
00096         SaXImport* mImport;
00097         QFile*     mHandle;
00098         QString    mFile;
00099 
00100         public:
00101         bool doExport (void);
00102 
00103         public:
00104         SaXExport ( SaXImport*,SaXException* );
00105 };
00106 } // end namespace
00107 #endif

Generated on Mon Jan 7 17:25:36 2008 for libsax by  doxygen 1.4.6