00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __tdesycocadict_h__
00020 #define __tdesycocadict_h__
00021
00022 #include <tqstring.h>
00023 #include <tqvaluelist.h>
00024 #include <tqdatastream.h>
00025 #include "tdelibs_export.h"
00026
00027 class KSycocaEntry;
00028 class KSycocaDictStringList;
00029
00034 class TDECORE_EXPORT KSycocaDict
00035 {
00036 public:
00040 KSycocaDict();
00044 KSycocaDict(TQDataStream *str, int offset);
00045
00046 ~KSycocaDict();
00047
00054 void add(const TQString &key, KSycocaEntry *payload);
00055
00061 void remove(const TQString &key);
00062
00075 int find_string(const TQString &key );
00076
00082 uint count();
00083
00089 void clear();
00090
00111 void save(TQDataStream &str);
00112
00113 protected:
00114 TQ_UINT32 hashKey( const TQString &);
00115 private:
00116 KSycocaDictStringList *d;
00117 TQDataStream *mStr;
00118 TQ_INT32 mOffset;
00119 TQ_UINT32 mHashTableSize;
00120 TQValueList<TQ_INT32> mHashList;
00121 };
00122
00123 #endif