1ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com
2ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com/*
3ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * Copyright 2006 The Android Open Source Project
4ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com *
5ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * Use of this source code is governed by a BSD-style license that can be
6ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * found in the LICENSE file.
7ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com */
8ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com
98a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com
108a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#include "SkTime.h"
118a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com
128a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#include <sys/time.h>
138a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#include <time.h>
148a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com
15d0306a15938a971e10dd8648d3e17b001c4b0014commit-bot@chromium.orgvoid SkTime::GetDateTime(DateTime* dt)
16d0306a15938a971e10dd8648d3e17b001c4b0014commit-bot@chromium.org{
17d0306a15938a971e10dd8648d3e17b001c4b0014commit-bot@chromium.org    if (dt)
18d0306a15938a971e10dd8648d3e17b001c4b0014commit-bot@chromium.org    {
198a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        time_t m_time;
208a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        time(&m_time);
218a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        struct tm* tstruct;
228a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        tstruct = localtime(&m_time);
238a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com
248a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        dt->fYear       = tstruct->tm_year;
258a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        dt->fMonth      = SkToU8(tstruct->tm_mon + 1);
268a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        dt->fDayOfWeek  = SkToU8(tstruct->tm_wday);
278a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        dt->fDay        = SkToU8(tstruct->tm_mday);
288a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        dt->fHour       = SkToU8(tstruct->tm_hour);
298a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        dt->fMinute     = SkToU8(tstruct->tm_min);
308a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        dt->fSecond     = SkToU8(tstruct->tm_sec);
318a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com    }
328a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com}
338a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com
34d0306a15938a971e10dd8648d3e17b001c4b0014commit-bot@chromium.orgSkMSec SkTime::GetMSecs()
35d0306a15938a971e10dd8648d3e17b001c4b0014commit-bot@chromium.org{
36d0306a15938a971e10dd8648d3e17b001c4b0014commit-bot@chromium.org    struct timeval tv;
37d0306a15938a971e10dd8648d3e17b001c4b0014commit-bot@chromium.org    gettimeofday(&tv, NULL);
38d0306a15938a971e10dd8648d3e17b001c4b0014commit-bot@chromium.org    return (SkMSec) (tv.tv_sec * 1000 + tv.tv_usec / 1000 ); // microseconds to milliseconds
39d361e7eaa6ef399989914a56ff377005f8d44daebsalomon@google.com}
40