kDB: Knowledge DataBase
Loading...
Searching...
No Matches
TypeDefinitions.h
1#ifndef _KNOW_CORE_TYPEDEFINITIONS_H_
2#define _KNOW_CORE_TYPEDEFINITIONS_H_
3
4#include <QList>
5
6#include "Array.h"
7#include "MetaType.h"
8#include "Vector.h"
9
10KNOWCORE_DECLARE_KNOWCORE_METATYPE_KLASS(bool);
11
12#define KNOWCORE_CORE_DECLARE_VECTOR(__SIZE__) \
13 typedef Vector<double, __SIZE__> Vector##__SIZE__##d; \
14 typedef QList<Vector##__SIZE__##d> Vector##__SIZE__##dList; \
15 typedef Vector<float, __SIZE__> Vector##__SIZE__##f; \
16 typedef QList<Vector##__SIZE__##f> Vector##__SIZE__##fList;
17
18#define KNOWCORE_CORE_DECLARE_NUMBER_CONTAINER(__TYPE__, __NAME__) \
19 typedef QList<__TYPE__> __NAME__##List; \
20 typedef Array<__TYPE__> __NAME__##Array;
21
22#define KNOWCORE_CORE_DECLARE_INT_CONTAINERS(__SIZE__) \
23 KNOWCORE_CORE_DECLARE_NUMBER_CONTAINER(qint##__SIZE__, Int##__SIZE__) \
24 KNOWCORE_CORE_DECLARE_NUMBER_CONTAINER(quint##__SIZE__, UInt##__SIZE__)
25
26KNOWCORE_DECLARE_KNOWCORE_METATYPE_KLASS(quint8);
27KNOWCORE_DECLARE_KNOWCORE_METATYPE_KLASS(quint16);
28KNOWCORE_DECLARE_KNOWCORE_METATYPE_KLASS(quint32);
29KNOWCORE_DECLARE_KNOWCORE_METATYPE_KLASS(quint64);
30KNOWCORE_DECLARE_KNOWCORE_METATYPE_KLASS(qint8);
31KNOWCORE_DECLARE_KNOWCORE_METATYPE_KLASS(qint16);
32KNOWCORE_DECLARE_KNOWCORE_METATYPE_KLASS(qint32);
33KNOWCORE_DECLARE_KNOWCORE_METATYPE_KLASS(qint64);
34KNOWCORE_DECLARE_KNOWCORE_METATYPE_KLASS(float);
35KNOWCORE_DECLARE_KNOWCORE_METATYPE_KLASS(double);
36
37namespace knowCore
38{
39 KNOWCORE_CORE_DECLARE_INT_CONTAINERS(8)
40 KNOWCORE_CORE_DECLARE_INT_CONTAINERS(16)
41 KNOWCORE_CORE_DECLARE_INT_CONTAINERS(32)
42 KNOWCORE_CORE_DECLARE_INT_CONTAINERS(64)
43 KNOWCORE_CORE_DECLARE_NUMBER_CONTAINER(float, Float)
44 KNOWCORE_CORE_DECLARE_NUMBER_CONTAINER(double, Double)
45 KNOWCORE_CORE_DECLARE_VECTOR(2)
46 KNOWCORE_CORE_DECLARE_VECTOR(3)
47 KNOWCORE_CORE_DECLARE_VECTOR(4)
48 KNOWCORE_CORE_DECLARE_VECTOR(5)
49 KNOWCORE_CORE_DECLARE_VECTOR(6)
50 KNOWCORE_CORE_DECLARE_VECTOR(7)
51 KNOWCORE_CORE_DECLARE_VECTOR(8)
52 KNOWCORE_CORE_DECLARE_VECTOR(9)
53 typedef Array<QByteArray> BytesArray;
54 typedef Array<QString> StringArray;
55} // namespace knowCore
56
57#include "MetaType.h"
58
59#define KNOWCORE_DECLARE_FULL_METATYPE_NUMBER_CONTAINER(__NAME__) \
60 KNOWCORE_DECLARE_FULL_METATYPE(knowCore, __NAME__##List) \
61 KNOWCORE_DECLARE_FULL_METATYPE(knowCore, __NAME__##Array)
62
63#define KNOWCORE_DECLARE_FULL_METATYPE_INT_CONTAINERS(__SIZE__) \
64 KNOWCORE_DECLARE_FULL_METATYPE_NUMBER_CONTAINER(Int##__SIZE__) \
65 KNOWCORE_DECLARE_FULL_METATYPE_NUMBER_CONTAINER(UInt##__SIZE__)
66
67KNOWCORE_DECLARE_FULL_METATYPE_INT_CONTAINERS(8)
68KNOWCORE_DECLARE_FULL_METATYPE_INT_CONTAINERS(16)
69KNOWCORE_DECLARE_FULL_METATYPE_INT_CONTAINERS(32)
70KNOWCORE_DECLARE_FULL_METATYPE_INT_CONTAINERS(64)
71KNOWCORE_DECLARE_FULL_METATYPE_NUMBER_CONTAINER(Float)
72KNOWCORE_DECLARE_FULL_METATYPE_NUMBER_CONTAINER(Double)
73
74KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector2d)
75KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector3d)
76KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector4d)
77KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector5d)
78KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector6d)
79KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector7d)
80KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector8d)
81KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector9d)
82
83KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector2dList)
84KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector3dList)
85KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector4dList)
86KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector5dList)
87KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector6dList)
88KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector7dList)
89KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector8dList)
90KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector9dList)
91
92KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector2f)
93KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector3f)
94KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector4f)
95KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector5f)
96KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector6f)
97KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector7f)
98KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector8f)
99KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector9f)
100
101KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector2fList)
102KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector3fList)
103KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector4fList)
104KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector5fList)
105KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector6fList)
106KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector7fList)
107KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector8fList)
108KNOWCORE_DECLARE_FULL_METATYPE(knowCore, Vector9fList)
109
110KNOWCORE_DECLARE_FULL_METATYPE(knowCore, BytesArray)
111KNOWCORE_DECLARE_FULL_METATYPE(knowCore, StringArray)
112
113class QJsonValue;
114KNOWCORE_DECLARE_FULL_METATYPE(, QJsonValue)
115
116#endif