00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef SAX_PROCESS_H
00022 #define SAX_PROCESS_H 1
00023
00024
00025
00026
00027 #include <qregexp.h>
00028 #include <qfile.h>
00029
00030 #include "storage.h"
00031 #include "exception.h"
00032 #include "processcall.h"
00033
00034 namespace SaX {
00035
00036
00037
00038 #define ISAX "/usr/sbin/isax"
00039 #define SYSP "/usr/sbin/sysp"
00040 #define PROF "/var/lib/sax/createPRO.pl"
00041
00042 #define CDBDIR "/usr/share/sax/api/data/cdb/"
00043 #define DATADIR "/usr/share/sax/api/data/"
00044 #define CDBCARDS CDBDIR "Cards"
00045 #define CDBMONITORS CDBDIR "Monitors"
00046 #define CDBPOINTERS CDBDIR "Pointers"
00047 #define CDBPENS CDBDIR "Pens"
00048 #define CDBTABLETS CDBDIR "Tablets"
00049 #define CDBTOUCHERS CDBDIR "Touchscreens"
00050 #define CDBCARDMODULES DATADIR "CardModules"
00051 #define CDBTABLETMODULES DATADIR "TabletModules"
00052
00053 #define SAX_CARD 4
00054 #define SAX_DESKTOP 5
00055 #define SAX_POINTERS 6
00056 #define SAX_KEYBOARD 7
00057 #define SAX_LAYOUT 8
00058 #define SAX_PATH 9
00059 #define SAX_EXTENSIONS 10
00060 #define SAX_ISAX 11
00061 #define SAX_SYSP 12
00062 #define SAX_CDB 13
00063 #define SAX_PROF 14
00064
00065 #define CDB_CARDS 15
00066 #define CDB_MONITORS 16
00067 #define CDB_PENS 17
00068 #define CDB_POINTERS 18
00069 #define CDB_TABLETS 19
00070 #define CDB_TOUCHERS 20
00071 #define CDB_CARDMODULES 21
00072 #define CDB_TABLETMODULES 22
00073
00074 #define SYSP_MOUSE 30
00075 #define SYSP_KEYBOARD 31
00076 #define SYSP_CARD 32
00077 #define SYSP_DESKTOP 33
00078 #define SYSP_3D 34
00079
00080 #define MAX_LINE_LENGTH 8192
00081
00082
00083
00084
00092 class SaXProcessIF : public SaXStorage {
00093 public:
00094 virtual void start ( QList<char>,int = SAX_ISAX ) = 0;
00095 virtual void start ( int ) = 0;
00096
00097 public:
00098 virtual ~SaXProcessIF ( void ) { }
00099 };
00100
00101
00102
00124 class SaXProcess : public SaXProcessIF {
00125 private:
00126 SaXProcessCall* mProc;
00127
00128 private:
00129 void storeData ( void );
00130 void storeDataSysp ( void );
00131 void storeDataCDB ( int );
00132 void storeDataSYS ( int );
00133
00134 public:
00135 void start ( QList<char>, int = SAX_ISAX );
00136 void start ( int );
00137
00138 public:
00139 SaXProcess ( void );
00140 };
00141 }
00142 #endif