VirtualBox

source: vbox/trunk/src/VBox/Runtime/timeprog.cpp@ 5031

Last change on this file since 5031 was 4071, checked in by vboxsync, 17 years ago

Biggest check-in ever. New source code headers for all (C) innotek files.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 2.1 KB
Line 
1/* $Id: timeprog.cpp 4071 2007-08-07 17:07:59Z vboxsync $ */
2/** @file
3 * innotek Portable Runtime - Time Relative to Program Start.
4 */
5
6/*
7 * Copyright (C) 2006-2007 innotek GmbH
8 *
9 * This file is part of VirtualBox Open Source Edition (OSE), as
10 * available from http://www.virtualbox.org. This file is free software;
11 * you can redistribute it and/or modify it under the terms of the GNU
12 * General Public License as published by the Free Software Foundation,
13 * in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
14 * distribution. VirtualBox OSE is distributed in the hope that it will
15 * be useful, but WITHOUT ANY WARRANTY of any kind.
16 */
17
18
19/*******************************************************************************
20* Header Files *
21*******************************************************************************/
22#include <iprt/time.h>
23#include <iprt/assert.h>
24#include "internal/time.h"
25
26
27
28/**
29 * Get the nanosecond timestamp relative to program startup.
30 *
31 * @returns Timestamp relative to program startup.
32 */
33RTDECL(uint64_t) RTTimeProgramNanoTS(void)
34{
35 return RTTimeNanoTS() - g_u64ProgramStartNanoTS;
36}
37
38
39/**
40 * Get the microsecond timestamp relative to program startup.
41 *
42 * @returns Timestamp relative to program startup.
43 */
44RTDECL(uint64_t) RTTimeProgramMicroTS(void)
45{
46 return RTTimeProgramNanoTS() / 1000;
47}
48
49
50/**
51 * Get the millisecond timestamp relative to program startup.
52 *
53 * @returns Timestamp relative to program startup.
54 */
55RTDECL(uint64_t) RTTimeProgramMilliTS(void)
56{
57 return RTTimeMilliTS() - g_u64ProgramStartMilliTS;
58}
59
60
61/**
62 * Get the second timestamp relative to program startup.
63 *
64 * @returns Timestamp relative to program startup.
65 */
66RTDECL(uint32_t) RTTimeProgramSecTS(void)
67{
68 AssertMsg(g_u64ProgramStartMilliTS, ("RTR3Init hasn't been called!\n"));
69 return (uint32_t)(RTTimeProgramMilliTS() / 1000);
70}
71
72
73/**
74 * Get the RTTimeNanoTS() of when the program started.
75 *
76 * @returns Program startup timestamp.
77 */
78RTDECL(uint64_t) RTTimeProgramStartNanoTS(void)
79{
80 return g_u64ProgramStartNanoTS;
81}
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette