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