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:

Collaboration graph
[legend]
List of all members.

Public Methods

 ACE_Time_Value (void)
 Default Constructor.

 ACE_Time_Value (long sec, long usec = 0)
 Constructor.

 ACE_Time_Value (const struct timeval &t)
 Construct the from a <timeval>.

 ACE_Time_Value (const timespec_t &t)
 Initializes the object from a <timespec_t>.

 ACE_Time_Value (const ACE_Time_Value &tv)
 Copy constructor.

 ACE_Time_Value (const FILETIME &ft)
 Initializes the ACE_Time_Value object from a Win32 FILETIME.

void set (long sec, long usec)
 Construct a <Time_Value> from two <long>s.

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.

void set (const timeval &t)
 Construct a <Time_Value> from a <timeval>.

void set (const timespec_t &t)
 Initializes the <Time_Value> object from a <timespec_t>.

void set (const FILETIME &ft)
 Initializes the <Time_Value> object from a <timespec_t>.

long msec (void) const
 Converts from <Time_Value> format into milli-seconds format.

void msec (long)
 Converts from milli-seconds format into <Time_Value> format.

 operator timespec_t () const
 Returns the value of the object as a <timespec_t>.

 operator timeval () const
 Returns the value of the object as a <timeval>.

 operator const timeval * () const
 Returns a pointer to the object as a <timeval>.

 operator FILETIME () const
 Returns the value of the object as a Win32 FILETIME.

long sec (void) const
 Get seconds.

void sec (long sec)
 Set seconds.

long usec (void) const
 Get microseconds.

void usec (long usec)
 Set microseconds.

void operator+= (const ACE_Time_Value &tv)
 Add <tv> to this.

void operator-= (const ACE_Time_Value &tv)
 Subtract <tv> to this.

ACE_Time_Value& operator *= (double d)
 Multiply the time value by the <d> factor, which must be >= 0.

void dump (void) const
 Dump the state of an object.


Static Public Attributes

const ACE_Time_Value zero
 Constant "0".

const ACE_Time_Value max_time
const DWORDLONG FILETIME_to_timval_skew
 Const time difference between FILETIME and POSIX time.


Private Methods

void normalize (void)
 Put the timevalue into a canonical form.


Private Attributes

timeval tv_
 Store the values as a <timeval>.


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.

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.

ACE_OS_Export int operator< (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
 True if tv1 < tv2.

ACE_OS_Export int operator> (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
 True if tv1 > tv2.

ACE_OS_Export int operator<= (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
 True if tv1 <= tv2.

ACE_OS_Export int operator>= (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
 True if tv1 >= tv2.

ACE_OS_Export int operator== (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
 True if tv1 == tv2.

ACE_OS_Export int operator!= (const ACE_Time_Value &tv1, const ACE_Time_Value &tv2)
 True if tv1 != tv2.


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>. 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 from a <timeval>.

ACE_INLINE ACE_Time_Value::ACE_Time_Value ( const timespec_t & tv )
 

Initializes the 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 & ft )
 

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_Time_Value::operator FILETIME ( ) const
 

Returns the value of the object as a Win32 FILETIME.

ACE_INLINE ACE_Time_Value::operator const timeval * ( ) const
 

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

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_INLINE void ACE_Time_Value::operator+= ( const ACE_Time_Value & tv )
 

Add <tv> to this.

ACE_INLINE void 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 & ft )
 

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]
 

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 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:
Generated at Sat Dec 1 11:05:59 2001 for ACE by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000