KDECore
ksycoca.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef KSYCOCA_H
00020 #define KSYCOCA_H
00021
00022 #include <kdecore_export.h>
00023 #include <ksycocatype.h>
00024
00025 #include <QtCore/QObject>
00026 #include <QtCore/QStringList>
00027
00028 class QDataStream;
00029 class KSycocaFactory;
00030 class KSycocaFactoryList;
00031 class KSycocaPrivate;
00032
00038 #define KSYCOCA_VERSION 113
00039
00043 #define KSYCOCA_FILENAME "ksycoca4"
00044
00047 #define KBUILDSYCOCA_EXENAME "kbuildsycoca4"
00048
00053 class KDECORE_EXPORT KSycoca : public QObject
00054 {
00055 Q_OBJECT
00056
00057
00058 protected:
00063 explicit KSycoca( bool );
00064
00065 public:
00066
00070 KSycoca();
00071
00075 static KSycoca *self();
00076
00077 virtual ~KSycoca();
00078
00082 static int version();
00083
00089 static bool isAvailable();
00090
00095 QDataStream *findEntry(int offset, KSycocaType &type);
00099 QDataStream *findFactory( KSycocaFactoryId id);
00103 QString kfsstnd_prefixes();
00107 QString language();
00108
00115 quint32 timeStamp();
00116
00126 quint32 updateSignature();
00127
00132 QStringList allResourceDirs();
00133
00137 void addFactory( KSycocaFactory * );
00138
00143 virtual bool isBuilding();
00144
00148 void disableAutoRebuild();
00149
00155 static bool isChanged(const char *type);
00156
00160 static void flagError();
00161
00165 static bool readError();
00166
00167 private Q_SLOTS:
00171 void notifyDatabaseChanged(const QStringList &);
00172
00173 Q_SIGNALS:
00178 void databaseChanged();
00179
00180 protected:
00181 KSycocaFactoryList* factories();
00182
00183
00184 QDataStream *m_str;
00185
00186 private:
00187 Q_DISABLE_COPY(KSycoca)
00188 friend class KSycocaPrivate;
00189 KSycocaPrivate * const d;
00190 };
00191
00192 #endif
00193