aboutsummaryrefslogtreecommitdiff
path: root/core/src/Model/Template/Template_RTTI.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/Model/Template/Template_RTTI.cpp')
-rw-r--r--core/src/Model/Template/Template_RTTI.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/core/src/Model/Template/Template_RTTI.cpp b/core/src/Model/Template/Template_RTTI.cpp
new file mode 100644
index 0000000..042aaec
--- /dev/null
+++ b/core/src/Model/Template/Template_RTTI.cpp
@@ -0,0 +1,21 @@
+#include "Template.hpp"
+
+#include "Model/Template/TableTemplate.hpp"
+
+inline const char* Template::FormatKind(Kind kind)
+{
+ switch (kind) {
+ case KD_Table: return "Table template";
+
+ case InvalidKind: return "<invalid kind>";
+ }
+}
+
+inline std::unique_ptr<Template> Template::CreateByKind(Kind kind)
+{
+ switch (kind) {
+ case KD_Table: return std::make_unique<TableTemplate>();
+
+ case InvalidKind: return nullptr;
+ }
+}