8#ifndef INCLUDED_BDLT_EPOCHUTIL
9#define INCLUDED_BDLT_EPOCHUTIL
170#include <bdlscm_version.h>
182#include <bsl_ctime.h>
214 static const TimeT64 s_earliestAsTimeT64;
215 static const TimeT64 s_latestAsTimeT64;
437 return bsl::time_t(
static_cast<int>(dti.
totalSeconds()));
453 if (seconds > 0x7fffffffLL) {
457 *result =
static_cast<bsl::time_t
>(seconds);
481 if (time < s_earliestAsTimeT64 || time > s_latestAsTimeT64) {
499 datetime.
getTime(&hour, &minute, &second);
502 dt.
setTime(hour, minute, second);
521 return epoch() + timeInterval;
531 *result =
epoch() + timeInterval;
550 return epoch() + datetimeInterval;
560 *result =
epoch() + datetimeInterval;
566 return datetime -
epoch();
597 *result = datetime -
epoch();
Definition bdlt_datetimeinterval.h:201
int milliseconds() const
Definition bdlt_datetimeinterval.h:1188
bsls::Types::Int64 totalSeconds() const
Definition bdlt_datetimeinterval.h:1221
int microseconds() const
Definition bdlt_datetimeinterval.h:1195
Definition bdlt_datetime.h:330
Date date() const
Return the value of the "date" part of this object.
Definition bdlt_datetime.h:2234
void setTime(const Time &time)
Definition bdlt_datetime.h:1620
Datetime & addSeconds(bsls::Types::Int64 seconds)
Definition bdlt_datetime.h:2094
void getTime(int *hour, int *minute=0, int *second=0, int *millisecond=0, int *microsecond=0) const
Definition bdlt_datetime.h:2260
Definition bsls_timeinterval.h:307
BSLS_KEYWORD_CONSTEXPR_CPP14 void setInterval(bsls::Types::Int64 seconds, int nanoseconds=0)
Definition bsls_timeinterval.h:1320
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
#define BSLS_REVIEW(X)
Definition bsls_review.h:1019
Definition bbldc_basicisma30360.h:112
static const Datetime * epoch_1970_01_01()
Definition bdlt_epochutil.h:199
static Datetime convertFromDatetimeInterval(const DatetimeInterval &datetimeInterval)
Definition bdlt_epochutil.h:547
static Datetime convertFromTimeT64(TimeT64 time)
Definition bdlt_epochutil.h:465
static bsl::time_t convertToTimeT(const Datetime &datetime)
Definition bdlt_epochutil.h:426
static DatetimeInterval convertToDatetimeInterval(const Datetime &datetime)
Definition bdlt_epochutil.h:564
static Datetime convertFromTimeT(bsl::time_t time)
Definition bdlt_epochutil.h:405
static const Datetime & epoch()
Definition bdlt_epochutil.h:397
static Datetime convertFromTimeInterval(const bsls::TimeInterval &timeInterval)
Definition bdlt_epochutil.h:518
static TimeT64 convertToTimeT64(const Datetime &datetime)
Definition bdlt_epochutil.h:493
bsls::Types::Int64 TimeT64
Definition bdlt_epochutil.h:210
static bsls::TimeInterval convertToTimeInterval(const Datetime &datetime)
Definition bdlt_epochutil.h:535
long long Int64
Definition bsls_types.h:134