]> git.stg.codes - stg.git/blobdiff - include/stg/service_conf.h
Fixed stupid bug in case conversion functions.
[stg.git] / include / stg / service_conf.h
index ea3495b3dd686052dbb5570f09072b998a994285..ca58154b2a08d53612b64f6419f4f6e4cdbcfa6b 100644 (file)
@@ -3,8 +3,13 @@
 
 #include <string>
 
 
 #include <string>
 
+#include "os_int.h"
+
 struct SERVICE_CONF
 {
 struct SERVICE_CONF
 {
+SERVICE_CONF()
+    : name(), comment(), cost(0), payDay(0)
+{}
 SERVICE_CONF(const std::string & n)
     : name(n), comment(), cost(0), payDay(0)
 {}
 SERVICE_CONF(const std::string & n)
     : name(n), comment(), cost(0), payDay(0)
 {}
@@ -12,18 +17,24 @@ SERVICE_CONF(const std::string & n, double c)
     : name(n), comment(), cost(c), payDay(0)
 {}
 SERVICE_CONF(const std::string & n, double c, unsigned p)
     : name(n), comment(), cost(c), payDay(0)
 {}
 SERVICE_CONF(const std::string & n, double c, unsigned p)
-    : name(n), comment(), cost(c), payDay(p)
+    : name(n), comment(), cost(c), payDay(static_cast<uint8_t>(p))
 {}
 SERVICE_CONF(const std::string & n, double c,
              unsigned p, const std::string & com)
 {}
 SERVICE_CONF(const std::string & n, double c,
              unsigned p, const std::string & com)
-    : name(n), comment(com), cost(c), payDay(p)
+    : name(n), comment(com), cost(c), payDay(static_cast<uint8_t>(p))
 {}
 
 std::string name;
 std::string comment;
 double      cost;
 {}
 
 std::string name;
 std::string comment;
 double      cost;
-unsigned    payDay;
+uint8_t     payDay;
 };
 
 };
 
+inline
+bool operator==(const SERVICE_CONF & a, const SERVICE_CONF & b)
+{
+return a.name == b.name;
+}
+
 #endif //SERVICE_CONF_H
 
 #endif //SERVICE_CONF_H