Game Develop Core: MetadataProvider.h Source File

| Game Develop Core Core library for developing platforms and tools compatible with Game Develop.

- Main Page
- Modules
- Classes

- File List
- File Members

All Classes Files Functions Variables Typedefs Enumerations Macros Groups Pages
MetadataProvider.h
Go to the documentation of this file.
1
5 #ifndef METADATAPROVIDER_H
6 #define METADATAPROVIDER_H
7 #include <string>
8 #include "GDCore/Events/InstructionMetadata.h"
9 namespace gd { class AutomatismMetadata; }
10 namespace gd { class ObjectMetadata; }
11 namespace gd { class ExpressionMetadata; }
12 namespace gd { class ExpressionMetadata; }
13 namespace gd { class StrExpressionMetadata; }
14 namespace gd { class Platform; }
15
16 namespace gd
17 {
18
24 class GD_CORE_API MetadataProvider
25 {
26 public:
27
31 static const AutomatismMetadata & GetAutomatismMetadata(const gd::Platform & platform, std::string automatismType);
32
36 static const ObjectMetadata & GetObjectMetadata(const gd::Platform & platform, std::string type);
37
42 static const gd::InstructionMetadata & GetActionMetadata(const gd::Platform & platform, std::string actionType);
43
48 static const gd::InstructionMetadata & GetConditionMetadata(const gd::Platform & platform, std::string conditionType);
49
54 static const gd::ExpressionMetadata & GetExpressionMetadata(const gd::Platform & platform, std::string exprType);
55
60 static const gd::ExpressionMetadata & GetObjectExpressionMetadata(const gd::Platform & platform, std::string objectType, std::string exprType);
61
66 static const gd::ExpressionMetadata & GetAutomatismExpressionMetadata(const gd::Platform & platform, std::string autoType, std::string exprType);
67
72 static const gd::StrExpressionMetadata & GetStrExpressionMetadata(const gd::Platform & platform, std::string exprType);
73
78 static const gd::StrExpressionMetadata & GetObjectStrExpressionMetadata(const gd::Platform & platform, std::string objectType, std::string exprType);
79
84 static const gd::StrExpressionMetadata & GetAutomatismStrExpressionMetadata(const gd::Platform & platform, std::string autoType, std::string exprType);
85
90 static bool HasCondition(const gd::Platform & platform, std::string name);
91
96 static bool HasAction(const gd::Platform & platform, std::string name);
97
102 static bool HasObjectAction(const gd::Platform & platform, std::string objectType, std::string name);
103
108 static bool HasObjectCondition(const gd::Platform & platform, std::string objectType, std::string name);
109
114 static bool HasAutomatismAction(const gd::Platform & platform, std::string automatismType, std::string name);
115
120 static bool HasAutomatismCondition(const gd::Platform & platform, std::string automatismType, std::string name);
121
126 static bool HasExpression(const gd::Platform & platform, std::string name);
127
132 static bool HasObjectExpression(const gd::Platform & platform, std::string objectType, std::string name);
133
138 static bool HasAutomatismExpression(const gd::Platform & platform, std::string automatismType, std::string name);
139
144 static bool HasStrExpression(const gd::Platform & platform, std::string name);
145
150 static bool HasObjectStrExpression(const gd::Platform & platform, std::string objectType, std::string name);
151
156 static bool HasAutomatismStrExpression(const gd::Platform & platform, std::string automatismType, std::string name);
157
158 private:
159
160 static AutomatismMetadata badAutomatismInfo;
161 static ObjectMetadata badObjectInfo;
162 static gd::InstructionMetadata badInstructionMetadata;
163 static gd::ExpressionMetadata badExpressionMetadata;
164 static gd::StrExpressionMetadata badStrExpressionMetadata;
165
166 MetadataProvider();
167 virtual ~MetadataProvider();
168 };
169
170 }
171
172 #endif // METADATAPROVIDER_H