]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.databoard/cpp/DataBoardTest/DataBoard/FloatType.cpp
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.databoard / cpp / DataBoardTest / DataBoard / FloatType.cpp
1 #include "FloatType.h"\r
2 \r
3 #include "Range.h"\r
4 #include "Limit.h"\r
5 \r
6 #include <cfloat>\r
7 \r
8 namespace Databoard {\r
9         namespace Type {\r
10 \r
11                 FloatType::FloatType() : NumberType()\r
12                 {\r
13                         this->range = NULL;\r
14                 }\r
15 \r
16                 FloatType::FloatType(std::string unit) : NumberType(unit)\r
17                 {\r
18                         this->unit = unit;\r
19                         this->range = NULL;\r
20                 }\r
21 \r
22                 FloatType::FloatType(std::string unit, Range* range) : NumberType(unit, range)\r
23                 {\r
24                         this->unit = unit;\r
25                         this->range = range;\r
26                 }\r
27 \r
28                 FloatType::~FloatType()\r
29                 {\r
30                 }\r
31 \r
32                 float FloatType::minValue()\r
33                 {\r
34                         if(range == NULL) return FLT_MIN;\r
35 \r
36                         Limit* l = range->getLower();\r
37 \r
38                         float value = l->getFloat(FLT_MIN);\r
39 \r
40                         return value;\r
41                 }\r
42 \r
43                 float FloatType::maxValue()\r
44                 {\r
45                         if(range == NULL) return FLT_MAX;\r
46 \r
47                         Limit* l = range->getUpper();\r
48 \r
49                         float value = l->getFloat(FLT_MAX);\r
50 \r
51                         return value;\r
52                 }\r
53 \r
54                 std::string FloatType::writeOut(int indent)\r
55                 {\r
56                         std::string s;\r
57 \r
58                         s.append("Float");\r
59 \r
60                         s += NumberType::writeOut(indent + 1);\r
61 \r
62                         return s;\r
63                 }\r
64         }\r
65 }\r