Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# ACE_Time_Value Class Reference

Operations on "timeval" structures, which express time in <secs> and <usecs>. More...

`#include <OS.h>`

Collaboration diagram for ACE_Time_Value:

[legend]
List of all members.

## Public Methods
| ACE_Time_Value (void)
| Default Constructor. More...
| ACE_Time_Value (long sec, long usec=0)
| Constructor. More...
| ACE_Time_Value (const struct timeval &t)
| Construct the <ACE_Time_Value> from a <timeval>. More...
| ACE_Time_Value (const timespec_t &t)
| Initializes the <ACE_Time_Value> object from a <timespec_t>. More...
| ACE_Time_Value (const ACE_Time_Value &tv)
| Copy constructor. More...
| ACE_Time_Value (const FILETIME &ft)
| Initializes the ACE_Time_Value object from a Win32 FILETIME. More...
void | set (long sec, long usec)
| Construct a <Time_Value> from two <long>s. More...
void | set (double d)
| Construct a <Time_Value> from a <double>, which is assumed to be in second format, with any remainder treated as microseconds. More...
void | set (const timeval &t)
| Construct a <Time_Value> from a <timeval>. More...
void | set (const timespec_t &t)
| Initializes the <Time_Value> object from a <timespec_t>. More...
void | set (const FILETIME &ft)
| Initializes the <Time_Value> object from a <timespec_t>. More...
long | msec (void) const
| Converts from <Time_Value> format into milli-seconds format. More...
void | msec (long)
| Converts from milli-seconds format into <Time_Value> format. More...
| operator timespec_t () const
| Returns the value of the object as a <timespec_t>. More...
| operator timeval () const
| Returns the value of the object as a <timeval>. More...
| operator const timeval * () const
| Returns a pointer to the object as a <timeval>. More...
| operator FILETIME () const
| Returns the value of the object as a Win32 FILETIME. More...
long | sec (void) const
| Get seconds. More...
void | sec (long sec)
| Set seconds. More...
long | usec (void) const
| Get microseconds. More...
void | usec (long usec)
| Set microseconds. More...
ACE_Time_Value & | operator+= (const ACE_Time_Value &tv)
| Add <tv> to this. More...
ACE_Time_Value & | operator-= (const ACE_Time_Value &tv)
| Subtract <tv> to this. More...
ACE_Time_Value & | operator *= (double d)
| Multiply the time value by the <d> factor, which must be >= 0. More...
ACE_Time_Value | operator++ (int)
| Increment microseconds (the only reason this is here is to allow the use of ACE_Atomic_Op with ACE_Time_Value). More...
ACE_Time_Value & | operator++ (void)
ACE_Time_Value | operator-- (int)
| Decrement microseconds (the only reason this is here is to allow the use of ACE_Atomic_Op with ACE_Time_Value). More...
ACE_Time_Value & | operator-- (void)
void | dump (void) const
| Dump the state of an object. More...
## Static Public Attributes
const ACE_Time_Value | zero
| Constant "0". More...
const ACE_Time_Value | max_time
const DWORDLONG | FILETIME_to_timval_skew
| Const time difference between FILETIME and POSIX time. More...
## Private Methods
void | normalize (void)
| Put the timevalue into a canonical form. More...
## Private Attributes
timeval | tv_
| Store the values as a <timeval>. More...
## Friends
ACE_OS_Export ACE_Time_Value | operator+ (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
| Adds two ACE_Time_Value objects together, returns the sum. More...
ACE_OS_Export ACE_Time_Value | operator- (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
| Subtracts two ACE_Time_Value objects, returns the difference. More...
ACE_OS_Export int | operator< (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
| True if tv1 < tv2. More...
ACE_OS_Export int | operator> (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
| True if tv1 > tv2. More...
ACE_OS_Export int | operator<= (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
| True if tv1 <= tv2. More...
ACE_OS_Export int | operator>= (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
| True if tv1 >= tv2. More...
ACE_OS_Export int | operator== (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
| True if tv1 == tv2. More...
ACE_OS_Export int | operator!= (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
| True if tv1 != tv2. More...

## Detailed Description

Operations on "timeval" structures, which express time in <secs> and <usecs>.

This class centralizes all the time related processing in ACE. These timers are typically used in conjunction with OS mechanisms like <select>, <poll>, or <cond_timedwait>. <ACE_Time_Value> makes the use of these mechanisms portable across OS platforms,

## Constructor & Destructor Documentation

ACE_INLINE ACE_Time_Value::ACE_Time_Value | ( | void |  | ) |

| Default Constructor.

ACE_INLINE ACE_Time_Value::ACE_Time_Value | ( | long | sec,
|  | long | usec = 0
| ) |

| Constructor.

ACE_Time_Value::ACE_Time_Value | ( | const struct timeval & | t | ) |

| Construct the <ACE_Time_Value> from a <timeval>.

ACE_INLINE ACE_Time_Value::ACE_Time_Value | ( | const timespec_t & | tv | ) |

| Initializes the <ACE_Time_Value> object from a <timespec_t>.

ACE_INLINE ACE_Time_Value::ACE_Time_Value | ( | const ACE_Time_Value & | tv | ) |

| Copy constructor.

ACE_Time_Value::ACE_Time_Value | ( | const FILETIME & | file_time | ) |

| Initializes the ACE_Time_Value object from a Win32 FILETIME.

## Member Function Documentation

void ACE_Time_Value::dump | ( | void |  | ) | const

| Dump the state of an object.

ACE_INLINE void ACE_Time_Value::msec | ( | long | milliseconds | ) |

| Converts from milli-seconds format into <Time_Value> format.

ACE_INLINE long ACE_Time_Value::msec | ( | void |  | ) | const

| Converts from <Time_Value> format into milli-seconds format.

void ACE_Time_Value::normalize | ( | void |  | ) | `[private]`

| Put the timevalue into a canonical form.

ACE_INLINE ACE_Time_Value & ACE_Time_Value::operator *= | ( | double | d | ) |

| Multiply the time value by the <d> factor, which must be >= 0.

ACE_INLINE ACE_Time_Value::operator const timeval * | ( |  | ) | const

| Returns a pointer to the object as a <timeval>.

ACE_Time_Value::operator FILETIME | ( |  | ) | const

| Returns the value of the object as a Win32 FILETIME.

ACE_INLINE ACE_Time_Value::operator timespec_t | ( |  | ) | const

| Returns the value of the object as a <timespec_t>.

ACE_INLINE ACE_Time_Value::operator timeval | ( |  | ) | const

| Returns the value of the object as a <timeval>.

ACE_Time_Value & ACE_Time_Value::operator++ | ( | void |  | ) |

ACE_Time_Value ACE_Time_Value::operator++ | ( | int |  | ) |

| Increment microseconds (the only reason this is here is to allow the use of ACE_Atomic_Op with ACE_Time_Value).

ACE_INLINE ACE_Time_Value & ACE_Time_Value::operator+= | ( | const ACE_Time_Value & | tv | ) |

| Add <tv> to this.

ACE_Time_Value & ACE_Time_Value::operator-- | ( | void |  | ) |

ACE_Time_Value ACE_Time_Value::operator-- | ( | int |  | ) |

| Decrement microseconds (the only reason this is here is to allow the use of ACE_Atomic_Op with ACE_Time_Value).

ACE_INLINE ACE_Time_Value & ACE_Time_Value::operator-= | ( | const ACE_Time_Value & | tv | ) |

| Subtract <tv> to this.

ACE_INLINE void ACE_Time_Value::sec | ( | long | sec | ) |

| Set seconds.

ACE_INLINE long ACE_Time_Value::sec | ( | void |  | ) | const

| Get seconds.

void ACE_Time_Value::set | ( | const FILETIME & | file_time | ) |

| Initializes the <Time_Value> object from a <timespec_t>.

ACE_INLINE void ACE_Time_Value::set | ( | const timespec_t & | tv | ) |

| Initializes the <Time_Value> object from a <timespec_t>.

ACE_INLINE void ACE_Time_Value::set | ( | const timeval & | tv | ) |

| Construct a <Time_Value> from a <timeval>.

ACE_INLINE void ACE_Time_Value::set | ( | double | d | ) |

| Construct a <Time_Value> from a <double>, which is assumed to be in second format, with any remainder treated as microseconds.

ACE_INLINE void ACE_Time_Value::set | ( | long | sec,
|  | long | usec
| ) |

| Construct a <Time_Value> from two <long>s.

ACE_INLINE void ACE_Time_Value::usec | ( | long | usec | ) |

| Set microseconds.

ACE_INLINE long ACE_Time_Value::usec | ( | void |  | ) | const

| Get microseconds.

## Friends And Related Function Documentation

ACE_OS_Export int operator!= | ( | const ACE_Time_Value & | tv1,
|  | const ACE_Time_Value & | tv2
| ) | `[friend]`

| True if tv1 != tv2.

ACE_OS_Export ACE_Time_Value operator+ | ( | const ACE_Time_Value & | tv1,
|  | const ACE_Time_Value & | tv2
| ) | `[friend]`

| Adds two ACE_Time_Value objects together, returns the sum.

ACE_OS_Export ACE_Time_Value operator- | ( | const ACE_Time_Value & | tv1,
|  | const ACE_Time_Value & | tv2
| ) | `[friend]`

| Subtracts two ACE_Time_Value objects, returns the difference.

ACE_OS_Export int operator< | ( | const ACE_Time_Value & | tv1,
|  | const ACE_Time_Value & | tv2
| ) | `[friend]`

| True if tv1 < tv2.

ACE_OS_Export int operator<= | ( | const ACE_Time_Value & | tv1,
|  | const ACE_Time_Value & | tv2
| ) | `[friend]`

| True if tv1 <= tv2.

ACE_OS_Export int operator== | ( | const ACE_Time_Value & | tv1,
|  | const ACE_Time_Value & | tv2
| ) | `[friend]`

| True if tv1 == tv2.

ACE_OS_Export int operator> | ( | const ACE_Time_Value & | tv1,
|  | const ACE_Time_Value & | tv2
| ) | `[friend]`

| True if tv1 > tv2.

ACE_OS_Export int operator>= | ( | const ACE_Time_Value & | tv1,
|  | const ACE_Time_Value & | tv2
| ) | `[friend]`

| True if tv1 >= tv2.

## Member Data Documentation

const DWORDLONG ACE_Time_Value::FILETIME_to_timval_skew`[static]`

| Initial value:
    ACE_INT64_LITERAL (0x19db1ded53e8000)
Const time difference between FILETIME and POSIX time.

const ACE_Time_Value ACE_Time_Value::max_time`[static]`

| Constant for maximum time representable. Note that this time is not intended for use with <select> or other calls that may have *their own* implementation-specific maximum time representations. Its primary use is in time computations such as those used by the dynamic subpriority strategies in the <ACE_Dynamic_Message_Queue> class.

timeval ACE_Time_Value::tv_`[private]`

| Store the values as a <timeval>.

const ACE_Time_Value ACE_Time_Value::zero`[static]`

| Constant "0".

The documentation for this class was generated from the following files:

- OS.h
- OS.cpp
- OS.i