kio
kmimemagic.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
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef KMIMEMAGIC_H
00031 #define KMIMEMAGIC_H
00032
00033 #include <qstring.h>
00034 #include <kdelibs_export.h>
00035
00036 class KMimeMagic;
00037
00046 class KIO_EXPORT_DEPRECATED KMimeMagicResult
00047 {
00048 public:
00049 KMimeMagicResult() { m_iAccuracy = 100; }
00050 ~KMimeMagicResult() { }
00051
00055 QString mimeType() const { return m_strMimeType; }
00059 int accuracy() const { return m_iAccuracy; }
00063 bool isValid() const { return !m_strMimeType.isEmpty(); }
00064
00066
00068 void setMimeType( const QString& _mime ) { m_strMimeType = _mime; }
00069 void setAccuracy( int _accuracy ) { m_iAccuracy = _accuracy; }
00070 void setInvalid() { m_strMimeType = QString::null; }
00071
00072 protected:
00073 QString m_strMimeType;
00074 int m_iAccuracy;
00075 };
00076
00101 class KIO_EXPORT_DEPRECATED KMimeMagic
00102 {
00103 public:
00109 KMimeMagic();
00110
00114 KMimeMagic( const QString & configFile );
00115
00119 ~KMimeMagic();
00120
00127 bool mergeConfig( const QString & configFile );
00128
00135 bool mergeBufConfig(char *);
00136
00142 void setFollowLinks( bool _enable );
00143
00156 KMimeMagicResult* findFileType( const QString & _filename );
00157
00170 KMimeMagicResult* findBufferType( const QByteArray &p );
00171
00186 KMimeMagicResult * findBufferFileType( const QByteArray &, const QString & filename );
00187
00191 static KMimeMagic* self();
00192
00193 protected:
00197 KMimeMagicResult * magicResult;
00198
00199 static void initStatic();
00200 static KMimeMagic* s_pSelf;
00201
00202 private:
00203 void init( const QString& configFile );
00204
00205 bool bunused;
00206 QString sunused;
00207
00208 int parse_line(char *line, int *rule, int lineno);
00209 int parse(char *, int);
00210 int buff_apprentice(char*buff);
00211 int apprentice(const QString &configFile);
00212
00213 struct config_rec *conf;
00214 int iunused;
00215 };
00216
00217 #endif
00218