foobar2000 SDK  2015-01-14
Public Member Functions | Private Member Functions | Private Attributes
pfc::lores_timer

#include <timers.h>

Public Member Functions

double query () const
 
double query_reset ()
 
pfc::string8 queryString (unsigned precision=3)
 
void start ()
 

Private Member Functions

double _query (t_uint32 p_time) const
 
void _start (t_uint32 p_time)
 

Private Attributes

t_uint64 m_last_seen
 
t_uint64 m_start
 

Detailed Description

Definition at line 72 of file timers.h.

Member Function Documentation

double pfc::lores_timer::_query ( t_uint32  p_time) const
inlineprivate

Definition at line 92 of file timers.h.

92  {
93  t_uint64 time = p_time;
94  if (time < (m_last_seen & 0xFFFFFFFF)) time += 0x100000000;
95  m_last_seen = (m_last_seen & 0xFFFFFFFF00000000) + time;
96  return (double)(m_last_seen - m_start) / 1000.0;
97  }
uint64_t t_uint64
Definition: int_types.h:3
t_uint64 m_last_seen
Definition: timers.h:99
t_uint64 m_start
Definition: timers.h:98
void pfc::lores_timer::_start ( t_uint32  p_time)
inlineprivate

Definition at line 91 of file timers.h.

91 {m_last_seen = m_start = p_time;}
t_uint64 m_last_seen
Definition: timers.h:99
t_uint64 m_start
Definition: timers.h:98
double pfc::lores_timer::query ( ) const
inline

Definition at line 78 of file timers.h.

78  {
79  return _query(GetTickCount());
80  }
double _query(t_uint32 p_time) const
Definition: timers.h:92
double pfc::lores_timer::query_reset ( )
inline

Definition at line 81 of file timers.h.

81  {
82  t_uint32 time = GetTickCount();
83  double ret = _query(time);
84  _start(time);
85  return ret;
86  }
void _start(t_uint32 p_time)
Definition: timers.h:91
double _query(t_uint32 p_time) const
Definition: timers.h:92
uint32_t t_uint32
Definition: int_types.h:5
pfc::string8 pfc::lores_timer::queryString ( unsigned  precision = 3)
inline

Definition at line 87 of file timers.h.

87  {
88  return pfc::format_time_ex( query(), precision ).get_ptr();
89  }
const char * get_ptr() const
Definition: string_base.h:491
double query() const
Definition: timers.h:78
void pfc::lores_timer::start ( )
inline

Definition at line 74 of file timers.h.

74  {
75  _start(GetTickCount());
76  }
void _start(t_uint32 p_time)
Definition: timers.h:91

Field Documentation

t_uint64 pfc::lores_timer::m_last_seen
mutableprivate

Definition at line 99 of file timers.h.

t_uint64 pfc::lores_timer::m_start
private

Definition at line 98 of file timers.h.


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