Denis' bug fixes
[asdcplib.git] / src / KM_util.cpp
index 7dd6719ba28d0083c19d6d48fadfe6a2fc7ebb56..339f78bd1003be77fa7f655851ce9b7277515a11 100755 (executable)
@@ -600,6 +600,20 @@ Kumu::Timestamp::operator<(const Timestamp& rhs) const
   return ( CompareFileTime(&lft, &rft) == -1 );
 }
 
+//
+bool
+Kumu::Timestamp::operator>(const Timestamp& rhs) const
+{
+  SYSTEMTIME lhst, rhst;
+  FILETIME lft, rft;
+
+  TIMESTAMP_TO_SYSTIME(*this, &lhst);
+  TIMESTAMP_TO_SYSTIME(rhs, &rhst);
+  SystemTimeToFileTime(&lhst, &lft);
+  SystemTimeToFileTime(&rhst, &rft);
+  return ( CompareFileTime(&lft, &rft) == 1 );
+}
+
 inline ui64_t
 seconds_to_ns100(ui32_t seconds)
 {
@@ -685,6 +699,16 @@ Kumu::Timestamp::operator<(const Timestamp& rhs) const
   return ( timegm(&lhtm) < timegm(&rhtm) );
 }
 
+//
+bool
+Kumu::Timestamp::operator>(const Timestamp& rhs) const
+{
+  struct tm lhtm, rhtm;
+  TIMESTAMP_TO_TM(*this, &lhtm);
+  TIMESTAMP_TO_TM(rhs, &rhtm);
+  return ( timegm(&lhtm) > timegm(&rhtm) );
+}
+
 //
 void
 Kumu::Timestamp::AddDays(i32_t days)