]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.databoard/cpp/DataBoardTest/DataBoard/NumberType.cpp
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.databoard / cpp / DataBoardTest / DataBoard / NumberType.cpp
1 #include "NumberType.h"\r
2 \r
3 #include "Range.h"\r
4 \r
5 #include "Constants.h"\r
6 \r
7 namespace Databoard {\r
8         namespace Type {\r
9 \r
10                 NumberType::NumberType()\r
11                 {\r
12                         range = NULL;\r
13                 }\r
14 \r
15                 NumberType::NumberType(std::string unit)\r
16                 {\r
17                         this->unit = unit;\r
18                         range = new Range();\r
19                 }\r
20 \r
21                 NumberType::NumberType(std::string unit, Range* range)\r
22                 {\r
23                         this->unit = unit;\r
24                         this->range = range;\r
25                 }\r
26 \r
27                 NumberType::~NumberType()\r
28                 {\r
29                         if(range != NULL)\r
30                         {\r
31                                 delete range;\r
32                         }\r
33                 }\r
34 \r
35                 std::string NumberType::getUnit()\r
36                 {\r
37                         return unit;\r
38                 }\r
39 \r
40                 void NumberType::setUnit(std::string unit)\r
41                 {\r
42                         this->unit = unit;\r
43                 }\r
44 \r
45                 Range* NumberType::getRange()\r
46                 {\r
47                         return range;\r
48                 }\r
49 \r
50                 void NumberType::setRange(Range* value)\r
51                 {\r
52                         this->range = value;\r
53                 }\r
54 \r
55                 std::string NumberType::writeOut(int /*indent*/)\r
56                 {\r
57                         std::string s;\r
58 \r
59                         bool parenthesis = false;\r
60 \r
61                         if(unit.size() != 0)\r
62                         {\r
63                                 s += "(";\r
64                                 s.append(STR_UNIT);\r
65                                 s += "=\"" + unit + "\"";\r
66 \r
67 \r
68                                 parenthesis = true;\r
69                         }\r
70 \r
71                         if(range != NULL)\r
72                         {\r
73                                 if(parenthesis == false)\r
74                                 {\r
75                                         s += "(";\r
76                                 }\r
77                                 else\r
78                                 {\r
79                                         s += ", ";\r
80                                 }\r
81 \r
82                                 s.append(STR_RANGE);\r
83                                 s += "=" + range->writeOut();\r
84 \r
85                                 parenthesis = true;\r
86                         }\r
87 \r
88                         if(parenthesis == true)\r
89                         {\r
90                                 s += ")";\r
91                         }\r
92 \r
93 \r
94 \r
95                         return s;\r
96                 }\r
97         }\r
98 }\r