kDB: Knowledge DataBase
Loading...
Searching...
No Matches
Manager.h
1#include <QObject>
2
3#include "Forward.h"
4#include <knowCore/Global.h>
5
6namespace kDBBaseKnowledge
7{
8 class Manager : public QObject
9 {
10 public:
12 ~Manager();
16 knowCore::ReturnVoid addDirectory(const QString& _directory);
20 knowCore::ReturnVoid addFile(const QString& _file);
24 static void addDirectoryToAll(const QString& _directory);
28 static void addFileToAll(const QString& _file);
29 static void registerFileLoader(Interfaces::FileLoader* _fileLoader);
30 static void ignoreMimeType(const QString& _mime);
31 template<typename... _TArgs_>
32 static void ignoreMimeTypes(const QString& _mime, const _TArgs_&... _args);
33 private:
34 static void ignoreMimeTypes();
35 struct Private;
36 Private* const d;
37 };
38
39 template<typename... _TArgs_>
40 inline void Manager::ignoreMimeTypes(const QString& _mime, const _TArgs_&... _args)
41 {
42 ignoreMimeType(_mime);
43 ignoreMimeTypes(_args...);
44 }
45 inline void Manager::ignoreMimeTypes() {}
46
47}
48
49#define __KDB_REGISTER_BASE_KNOWLEDGE_FILE_LOADER(_NAME_, _KLASS_) \
50 namespace { \
51 class _NAME_ \
52 { \
53 _NAME_() \
54 { \
55 kDBBaseKnowledge::Manager::registerFileLoader(new _KLASS_); \
56 } \
57 static _NAME_ instance; \
58 }; \
59 _NAME_ _NAME_::instance; \
60 }
61
62#define KDB_REGISTER_BASE_KNOWLEDGE_FILE_LOADER(_KLASS_) \
63 __KDB_REGISTER_BASE_KNOWLEDGE_FILE_LOADER(__KNOWCORE_UNIQUE_STATIC_NAME(FileLoaderRegister), _KLASS_)
64
65#define __KDB_REGISTER_BASE_KNOWLEDGE_IGNORE_MIME_TYPE(_NAME_, ...) \
66 namespace { \
67 class _NAME_ \
68 { \
69 _NAME_() \
70 { \
71 kDBBaseKnowledge::Manager::ignoreMimeTypes(__VA_ARGS__); \
72 } \
73 static _NAME_ instance; \
74 }; \
75 _NAME_ _NAME_::instance; \
76 }
77
78#define KDB_REGISTER_BASE_KNOWLEDGE_IGNORE_MIME_TYPE(...) \
79 __KDB_REGISTER_BASE_KNOWLEDGE_IGNORE_MIME_TYPE(__KNOWCORE_UNIQUE_STATIC_NAME(IgnoreMimetypeRegster), __VA_ARGS__)
Definition Manager.h:9
knowCore::ReturnVoid addFile(const QString &_file)
static void addFileToAll(const QString &_file)
static void addDirectoryToAll(const QString &_directory)
knowCore::ReturnVoid addDirectory(const QString &_directory)
Definition WeakReference.h:18