You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2010/04/07 21:51:10 UTC

svn commit: r931656 - in /qpid/trunk/qpid/cpp: include/qpid/sys/Time.h src/qpid/sys/posix/Time.cpp src/qpid/sys/windows/Time.cpp

Author: aconway
Date: Wed Apr  7 19:51:09 2010
New Revision: 931656

URL: http://svn.apache.org/viewvc?rev=931656&view=rev
Log:
Added AbsTime::epoch()) constant to Time.h to provide a portable reference time point.

Modified:
    qpid/trunk/qpid/cpp/include/qpid/sys/Time.h
    qpid/trunk/qpid/cpp/src/qpid/sys/posix/Time.cpp
    qpid/trunk/qpid/cpp/src/qpid/sys/windows/Time.cpp

Modified: qpid/trunk/qpid/cpp/include/qpid/sys/Time.h
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/include/qpid/sys/Time.h?rev=931656&r1=931655&r2=931656&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/include/qpid/sys/Time.h (original)
+++ qpid/trunk/qpid/cpp/include/qpid/sys/Time.h Wed Apr  7 19:51:09 2010
@@ -88,13 +88,16 @@ class AbsTime {
     TimePrivate timepoint;
 
 public:
-    QPID_COMMON_EXTERN inline AbsTime() {}
+
+    QPID_COMMON_EXTERN inline AbsTime() : timepoint() {}
     QPID_COMMON_EXTERN AbsTime(const AbsTime& time0, const Duration& duration);
     // Default assignment operation fine
     // Default copy constructor fine
 
     QPID_COMMON_EXTERN static AbsTime now();
     QPID_COMMON_EXTERN static AbsTime FarFuture();
+    QPID_COMMON_EXTERN static AbsTime epoch(); // The Unix epoch: 1970-01-01T00:00:00
+
     const TimePrivate& getPrivate(void) const { return timepoint; }
     bool operator==(const AbsTime& t) const { return t.timepoint == timepoint; }
     template <class S> void serialize(S& s) { s(timepoint); }

Modified: qpid/trunk/qpid/cpp/src/qpid/sys/posix/Time.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/sys/posix/Time.cpp?rev=931656&r1=931655&r2=931656&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/sys/posix/Time.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/sys/posix/Time.cpp Wed Apr  7 19:51:09 2010
@@ -51,6 +51,8 @@ AbsTime AbsTime::now() {
     return time_now;
 }
 
+AbsTime AbsTime::epoch() { return AbsTime(); }
+
 Duration::Duration(const AbsTime& time0) :
     nanosecs(time0.timepoint)
 {}

Modified: qpid/trunk/qpid/cpp/src/qpid/sys/windows/Time.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/sys/windows/Time.cpp?rev=931656&r1=931655&r2=931656&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/sys/windows/Time.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/sys/windows/Time.cpp Wed Apr  7 19:51:09 2010
@@ -53,6 +53,10 @@ AbsTime AbsTime::now() {
     return time_now;
 }
 
+AbsTime AbsTime::epoch() {
+    return AbsTime(boost::posix_time::from_time_t(0));
+}
+
 Duration::Duration(const AbsTime& time0) : nanosecs(0) {
     time_period p(ptime(min_date_time), time0.timepoint);
     nanosecs = p.length().total_nanoseconds();



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org