#define POSIX_TIME_CONVERSION_HPP___
/* Copyright (c) 2002-2005 CrystalClear Software, Inc.
- * Use, modification and distribution is subject to the
+ * Use, modification and distribution is subject to the
* Boost Software License, Version 1.0. (See accompanying
* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
* Author: Jeff Garland, Bart Garst
return start + seconds(static_cast<long>(t));
}
- //! Convert a time to a tm structure truncating any fractional seconds
+ //! Convert a time to a tm structure truncating any fractional seconds
inline
std::tm to_tm(const boost::posix_time::ptime& t) {
std::tm timetm = boost::gregorian::to_tm(t.date());
boost::posix_time::time_duration td = t.time_of_day();
- timetm.tm_hour = td.hours();
- timetm.tm_min = td.minutes();
+ timetm.tm_hour = td.hours();
+ timetm.tm_min = td.minutes();
timetm.tm_sec = td.seconds();
- timetm.tm_isdst = -1; // -1 used when dst info is unknown
+ timetm.tm_isdst = -1; // -1 used when dst info is unknown
return timetm;
}
- //! Convert a time_duration to a tm structure truncating any fractional seconds and zeroing fields for date components
+ //! Convert a time_duration to a tm structure truncating any fractional seconds and zeroing fields for date components
inline
std::tm to_tm(const boost::posix_time::time_duration& td) {
- std::tm timetm = {};
+ std::tm timetm = std::tm();
timetm.tm_hour = date_time::absolute_value(td.hours());
timetm.tm_min = date_time::absolute_value(td.minutes());
timetm.tm_sec = date_time::absolute_value(td.seconds());
#if defined(BOOST_HAS_FTIME)
-
+
//! Function to create a time object from an initialized FILETIME struct.
/*! Function to create a time object from an initialized FILETIME struct.
- * A FILETIME struct holds 100-nanosecond units (0.0000001). When
- * built with microsecond resolution the FILETIME's sub second value
- * will be truncated. Nanosecond resolution has no truncation.
+ * A FILETIME struct holds 100-nanosecond units (0.0000001). When
+ * built with microsecond resolution the FILETIME's sub second value
+ * will be truncated. Nanosecond resolution has no truncation.
*
* \note FILETIME is part of the Win32 API, so it is not portable to non-windows
* platforms.