libjmmcg  release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
jmmcg::LIBJMMCG_VER_NAMESPACE::hp_interval< T > Struct Template Reference

Measure a time interval via RAII. More...

#include <hp_timer.hpp>

Public Types

typedef T timer_t
 The underlying timer-type. More...
 

Public Member Functions

__stdcall hp_interval (timer_t const &t, typename timer_t::time_utc_t &i) noexcept(true)
 Construct an interval-measurer on the stack. More...
 
 hp_interval (hp_interval const &)=delete
 
__stdcall ~hp_interval () noexcept(true)
 

Public Attributes

timer_t const & timer
 The timer to use. More...
 
const timer_t::time_utc_t start
 

Detailed Description

template<typename T>
struct jmmcg::LIBJMMCG_VER_NAMESPACE::hp_interval< T >

Measure a time interval via RAII.

See also
hp_timer

Definition at line 75 of file hp_timer.hpp.

Member Typedef Documentation

◆ timer_t

template<typename T >
typedef T jmmcg::LIBJMMCG_VER_NAMESPACE::hp_interval< T >::timer_t

The underlying timer-type.

Definition at line 76 of file hp_timer.hpp.

Constructor & Destructor Documentation

◆ hp_interval() [1/2]

template<typename T >
__stdcall jmmcg::LIBJMMCG_VER_NAMESPACE::hp_interval< T >::hp_interval ( timer_t const &  t,
typename timer_t::time_utc_t &  i 
)
inlineexplicitnoexcept

Construct an interval-measurer on the stack.

Parameters
tThe timer to use.
iA reference to the interval to be set in the dtor.

Definition at line 85 of file hp_timer.hpp.

References jmmcg::LIBJMMCG_VER_NAMESPACE::hp_interval< T >::start, and jmmcg::LIBJMMCG_VER_NAMESPACE::hp_interval< T >::timer.

◆ hp_interval() [2/2]

template<typename T >
jmmcg::LIBJMMCG_VER_NAMESPACE::hp_interval< T >::hp_interval ( hp_interval< T > const &  )
delete

◆ ~hp_interval()

template<typename T >
jmmcg::LIBJMMCG_VER_NAMESPACE::hp_interval< T >::~hp_interval
inlinenoexcept

Set the interval in units of hp_timer::value_type, using the timer given in the ctor.

Definition at line 157 of file hp_timer.hpp.

Member Data Documentation

◆ start

template<typename T >
const timer_t::time_utc_t jmmcg::LIBJMMCG_VER_NAMESPACE::hp_interval< T >::start

The time this object was created.

Definition at line 79 of file hp_timer.hpp.

Referenced by jmmcg::LIBJMMCG_VER_NAMESPACE::hp_interval< T >::hp_interval().

◆ timer

template<typename T >
timer_t const& jmmcg::LIBJMMCG_VER_NAMESPACE::hp_interval< T >::timer

The timer to use.

Definition at line 78 of file hp_timer.hpp.

Referenced by jmmcg::LIBJMMCG_VER_NAMESPACE::hp_interval< T >::hp_interval().


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