# ACE_Profile_Timer Class Reference

This class provides both a timing mechanism and a mechanism for reporting the resource usage of a process. More...

`#include <Profile_Timer.h>`

Collaboration diagram for ACE_Profile_Timer:

[legend]
List of all members.

## Public Types

typedef ACE_Rusage | Rusage

## Public Member Functions

| ACE_Profile_Timer (void)
| Default constructor. Clears all time values to 0.
| ~ACE_Profile_Timer (void)
| Shutdown the timer.
int | start (void)
| Activate the timer.
int | stop (void)
| Stop the timer.
int | elapsed_time (ACE_Elapsed_Time &et)
| Compute the time elapsed between calls to `start()` and `stop()`.
void | elapsed_rusage (ACE_Profile_Timer::Rusage &rusage)
void | get_rusage (ACE_Profile_Timer::Rusage &rusage)
| Return the resource utilization (don't recompute it).
void | dump (void) const
| Dump the state of an object.

## Public Attributes

| ACE_ALLOC_HOOK_DECLARE
| Declare the dynamic allocation hooks.

## Private Member Functions

void | compute_times (ACE_Elapsed_Time &et)
| Compute how much time has elapsed.

## Private Attributes

ACE_Profile_Timer::Rusage | begin_usage_
| Keep track of the starting resource utilization.
ACE_Profile_Timer::Rusage | end_usage_
| Keep track of the ending resource utilization.
ACE_Profile_Timer::Rusage | last_usage_
| Keep track of the last rusage for incremental timing.
ACE_High_Res_Timer | timer_
| The high resolution timer.

## Detailed Description

This class provides both a timing mechanism and a mechanism for reporting the resource usage of a process.

## Member Typedef Documentation

typedef ACE_Rusage ACE_Profile_Timer::Rusage

## Constructor & Destructor Documentation

ACE_Profile_Timer::ACE_Profile_Timer | ( | void |  | ) |

| Default constructor. Clears all time values to 0.

ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE ACE_Profile_Timer::~ACE_Profile_Timer | ( | void |  | ) |

| Shutdown the timer.

## Member Function Documentation

void ACE_Profile_Timer::compute_times | ( | ACE_Elapsed_Time & | et | ) | `[private]`

| Compute how much time has elapsed.

ACE_BEGIN_VERSIONED_NAMESPACE_DECL void ACE_Profile_Timer::dump | ( | void |  | ) | const

| Dump the state of an object.

void ACE_Profile_Timer::elapsed_rusage | ( | ACE_Profile_Timer::Rusage & | rusage | ) |

| Compute the amount of resource utilization between calls to `start()` and `stop()`.

int ACE_Profile_Timer::elapsed_time | ( | ACE_Elapsed_Time & | et | ) |

| Compute the time elapsed between calls to `start()` and `stop()`.

void ACE_Profile_Timer::get_rusage | ( | ACE_Profile_Timer::Rusage & | rusage | ) |

| Return the resource utilization (don't recompute it).

ACE_INLINE int ACE_Profile_Timer::start | ( | void |  | ) |

| Activate the timer.

ACE_INLINE int ACE_Profile_Timer::stop | ( | void |  | ) |

| Stop the timer.

## Member Data Documentation

ACE_Profile_Timer::ACE_ALLOC_HOOK_DECLARE

| Declare the dynamic allocation hooks.

ACE_Profile_Timer::Rusage ACE_Profile_Timer::begin_usage_`[private]`

| Keep track of the starting resource utilization.

ACE_Profile_Timer::Rusage ACE_Profile_Timer::end_usage_`[private]`

| Keep track of the ending resource utilization.

ACE_Profile_Timer::Rusage ACE_Profile_Timer::last_usage_`[private]`

| Keep track of the last rusage for incremental timing.

ACE_High_Res_Timer ACE_Profile_Timer::timer_`[private]`

| The high resolution timer.

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

- Profile_Timer.h
- Profile_Timer.cpp
- Profile_Timer.inl