#include <ace/Profile_Timer.h>
class ACE_Profile_Timer {
public:
typedef prusage_t Rusage;
typedef rusage Rusage;
ACE_Profile_Timer (void);
~ACE_Profile_Timer (void);
int start (void);
int stop (void);
int elapsed_time (ACE_Elapsed_Time &et);
void elapsed_rusage (ACE_Profile_Timer::Rusage &rusage);
void get_rusage (ACE_Profile_Timer::Rusage &rusage);
void dump (void) const;
ACE_ALLOC_HOOK_DECLARE;
struct ACE_Elapsed_Time {
public:
double real_time;
double user_time;
double system_time;
ACE_UINT32 real_time;
ACE_UINT32 user_time;
ACE_UINT32 system_time;
double real_time;
double user_time;
double system_time;
};
ACE_Profile_Timer (void);
inline ~ACE_Profile_Timer (void);
int start (void);
int stop (void);
int elapsed_time (ACE_Elapsed_Time &et);
void dump (void) const;
private:
void compute_times (ACE_Elapsed_Time &et);
ACE_Profile_Timer::Rusage begin_usage_;
ACE_Profile_Timer::Rusage end_usage_;
ACE_Profile_Timer::Rusage last_usage_;
void subtract (timespec_t &tdiff, timespec_t &t0, timespec_t &t1);
ACE_HANDLE proc_handle_;
void subtract (timeval &tdiff, timeval &t0, timeval &t1);
timeval begin_time_;
timeval end_time_;
timeval last_time_;
ACE_Time_Value begin_time_;
ACE_Time_Value end_time_;
ACE_Time_Value last_time_;
ACE_High_Res_Timer timer_;
};
ACE_Profile_Timer (void);
~ACE_Profile_Timer (void);
int start (void);
int stop (void);
int elapsed_time (ACE_Elapsed_Time &et);
start
.
void elapsed_rusage (ACE_Profile_Timer::Rusage &rusage);
void get_rusage (ACE_Profile_Timer::Rusage &rusage);
void dump (void) const;
ACE_ALLOC_HOOK_DECLARE;