]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.databoard/cpp/DataBoardTest/DataBoard/MapType.cpp
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.databoard / cpp / DataBoardTest / DataBoard / MapType.cpp
diff --git a/bundles/org.simantics.databoard/cpp/DataBoardTest/DataBoard/MapType.cpp b/bundles/org.simantics.databoard/cpp/DataBoardTest/DataBoard/MapType.cpp
new file mode 100644 (file)
index 0000000..34777fb
--- /dev/null
@@ -0,0 +1,66 @@
+#include "MapType.h"\r
+\r
+namespace Databoard {\r
+       namespace Type {\r
+\r
+               MapType::MapType()\r
+               {\r
+                       keyType = NULL;\r
+                       valueType = NULL;\r
+               }\r
+\r
+               MapType::MapType(DataType* keyType, DataType* valueType)\r
+               {\r
+                       this->keyType = keyType;\r
+                       this->valueType = valueType;\r
+               }\r
+\r
+               MapType::~MapType()\r
+               {\r
+                       if(keyType != NULL)\r
+                       {\r
+                               delete keyType;\r
+                       }\r
+\r
+                       if(valueType != NULL)\r
+                       {\r
+                               delete valueType;\r
+                       }\r
+               }\r
+\r
+               DataType* MapType::getKeyType()\r
+               {\r
+                       return keyType;\r
+               }\r
+\r
+               DataType* MapType::getValueType()\r
+               {\r
+                       return valueType;\r
+               }\r
+\r
+               void MapType::setKeyType(DataType* keyType)\r
+               {\r
+                       this->keyType = keyType;\r
+               }\r
+\r
+               void MapType::setValueType(DataType* valueType)\r
+               {\r
+                       this->valueType = valueType;\r
+               }\r
+\r
+               std::string MapType::writeOut(int /*indent*/)\r
+               {\r
+                       std::string s;\r
+\r
+                       s.append("Map");\r
+\r
+                       s += "(";\r
+                       s += keyType->writeOut();\r
+                       s += ", ";\r
+                       s += valueType->writeOut();\r
+                       s += ")";\r
+\r
+                       return s;\r
+               }\r
+       }\r
+}\r