]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.databoard/cpp/DataBoardTest/DataBoard/RecordType.h
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.databoard / cpp / DataBoardTest / DataBoard / RecordType.h
diff --git a/bundles/org.simantics.databoard/cpp/DataBoardTest/DataBoard/RecordType.h b/bundles/org.simantics.databoard/cpp/DataBoardTest/DataBoard/RecordType.h
new file mode 100644 (file)
index 0000000..647c947
--- /dev/null
@@ -0,0 +1,37 @@
+#pragma once\r
+\r
+#include "DataType.h"\r
+\r
+#include <vector>\r
+\r
+namespace Databoard {\r
+       namespace Type {\r
+\r
+               class DATABOARD_API Component;\r
+\r
+               class DATABOARD_API RecordType : public DataType {\r
+               public:\r
+                       RecordType();\r
+                       RecordType(bool referable, std::vector<Component*> components);\r
+\r
+                       virtual ~RecordType();\r
+\r
+                       bool isReferable();\r
+\r
+                       void addComponent(std::string name, DataType* type);\r
+                       int getComponentIndex(std::string fieldName);\r
+                       Component* getComponent(std::string fieldName);\r
+                       int count();\r
+                       Component* getComponent(int i);\r
+                       std::vector<Component*> getComponents();\r
+\r
+                       virtual std::string writeOut(int indent = 0);\r
+\r
+               protected:\r
+\r
+                       bool referable;\r
+                       std::vector<Component*> components;\r
+\r
+               };\r
+       }\r
+}\r