Divide Framework 0.1
A free and open-source 3D Framework under heavy development
Loading...
Searching...
No Matches
Divide::Time Namespace Reference

Namespaces

namespace  anonymous_namespace{ApplicationTimer.cpp}
 
namespace  anonymous_namespace{ProfileTimer.cpp}
 
namespace  App
 

Classes

class  ApplicationTimer
 
class  FrameRateHandler
 
class  ProfileTimer
 
class  ScopedTimer
 

Typedefs

using TimeValue = std::chrono::time_point< std::chrono::high_resolution_clock >
 
using NSec = std::chrono::nanoseconds
 
using USec = std::chrono::microseconds
 
using MSec = std::chrono::milliseconds
 
using Sec = std::chrono::seconds
 

Functions

template<typename T >
constexpr T Hours (T a)
 
template<typename T >
constexpr T Minutes (T a)
 
template<typename T >
constexpr T Seconds (T a)
 
template<typename T >
constexpr T Milliseconds (T a)
 
template<typename T >
constexpr T Microseconds (T a)
 
template<typename T >
constexpr T Nanoseconds (T a)
 
template<typename T , typename U >
constexpr T Hours (U a)
 
template<typename T , typename U >
constexpr T Minutes (U a)
 
template<typename T , typename U >
constexpr T Seconds (U a)
 
template<typename T , typename U >
constexpr T Milliseconds (U a)
 
template<typename T , typename U >
constexpr T Microseconds (U a)
 
template<typename T , typename U >
constexpr T Nanoseconds (U a)
 
template<typename T = D64, typename U >
constexpr T NanosecondsToSeconds (U a) noexcept
 
template<typename T = D64, typename U >
constexpr T NanosecondsToMilliseconds (U a) noexcept
 
template<typename T = U64, typename U >
constexpr T NanosecondsToMicroseconds (U a) noexcept
 
template<typename T = D64, typename U >
constexpr T MicrosecondsToSeconds (U a) noexcept
 
template<typename T = U64, typename U >
constexpr T MicrosecondsToMilliseconds (U a) noexcept
 
template<typename T = U64, typename U >
constexpr T MicrosecondsToNanoseconds (U a) noexcept
 
template<typename T = D64, typename U >
constexpr T MillisecondsToSeconds (U a) noexcept
 
template<typename T = U64, typename U >
constexpr T MillisecondsToMicroseconds (U a) noexcept
 
template<typename T = U64, typename U >
constexpr T MillisecondsToNanoseconds (U a) noexcept
 
template<typename T = D64, typename U >
constexpr T SecondsToMilliseconds (U a) noexcept
 
template<typename T = U64, typename U >
constexpr T SecondsToMicroseconds (U a) noexcept
 
template<typename T = U64, typename U >
constexpr T SecondsToNanoseconds (U a) noexcept
 
ProfileTimerADD_TIMER (const char *timerName)
 
void REMOVE_TIMER (ProfileTimer *&timer)
 
void START_TIMER (ProfileTimer &timer) noexcept
 
void STOP_TIMER (ProfileTimer &timer) noexcept
 
U64 QUERY_TIMER (const ProfileTimer &timer) noexcept
 
string PRINT_TIMER (ProfileTimer &timer)
 
string PRINT_TIMER (const ProfileTimer &timer)
 

Typedef Documentation

◆ MSec

using Divide::Time::MSec = typedef std::chrono::milliseconds

Definition at line 46 of file ApplicationTimer.h.

◆ NSec

using Divide::Time::NSec = typedef std::chrono::nanoseconds

Definition at line 44 of file ApplicationTimer.h.

◆ Sec

using Divide::Time::Sec = typedef std::chrono::seconds

Definition at line 47 of file ApplicationTimer.h.

◆ TimeValue

using Divide::Time::TimeValue = typedef std::chrono::time_point<std::chrono::high_resolution_clock>

Definition at line 43 of file ApplicationTimer.h.

◆ USec

using Divide::Time::USec = typedef std::chrono::microseconds

Definition at line 45 of file ApplicationTimer.h.

Function Documentation

◆ ADD_TIMER()

ProfileTimer & Divide::Time::ADD_TIMER ( const char *  timerName)
inline

Definition at line 52 of file ProfileTimer.inl.

◆ Hours() [1/2]

template<typename T >
constexpr T Divide::Time::Hours ( a)
constexpr

Return the passed param without any modification Used only for emphasis

Definition at line 635 of file MathHelper.inl.

◆ Hours() [2/2]

template<typename T , typename U >
constexpr T Divide::Time::Hours ( a)
constexpr

Definition at line 671 of file MathHelper.inl.

◆ Microseconds() [1/2]

template<typename T >
constexpr T Divide::Time::Microseconds ( a)
constexpr

Definition at line 659 of file MathHelper.inl.

◆ Microseconds() [2/2]

template<typename T , typename U >
constexpr T Divide::Time::Microseconds ( a)
constexpr

Definition at line 695 of file MathHelper.inl.

◆ MicrosecondsToMilliseconds()

template<typename T = U64, typename U >
constexpr T Divide::Time::MicrosecondsToMilliseconds ( a)
constexprnoexcept

Definition at line 731 of file MathHelper.inl.

◆ MicrosecondsToNanoseconds()

template<typename T = U64, typename U >
constexpr T Divide::Time::MicrosecondsToNanoseconds ( a)
constexprnoexcept

Definition at line 737 of file MathHelper.inl.

◆ MicrosecondsToSeconds()

template<typename T = D64, typename U >
constexpr T Divide::Time::MicrosecondsToSeconds ( a)
constexprnoexcept

Definition at line 725 of file MathHelper.inl.

◆ Milliseconds() [1/2]

template<typename T >
constexpr T Divide::Time::Milliseconds ( a)
constexpr

Definition at line 653 of file MathHelper.inl.

◆ Milliseconds() [2/2]

template<typename T , typename U >
constexpr T Divide::Time::Milliseconds ( a)
constexpr

Definition at line 689 of file MathHelper.inl.

◆ MillisecondsToMicroseconds()

template<typename T = U64, typename U >
constexpr T Divide::Time::MillisecondsToMicroseconds ( a)
constexprnoexcept

Definition at line 749 of file MathHelper.inl.

◆ MillisecondsToNanoseconds()

template<typename T = U64, typename U >
constexpr T Divide::Time::MillisecondsToNanoseconds ( a)
constexprnoexcept

Definition at line 755 of file MathHelper.inl.

◆ MillisecondsToSeconds()

template<typename T = D64, typename U >
constexpr T Divide::Time::MillisecondsToSeconds ( a)
constexprnoexcept

Definition at line 743 of file MathHelper.inl.

◆ Minutes() [1/2]

template<typename T >
constexpr T Divide::Time::Minutes ( a)
constexpr

Definition at line 641 of file MathHelper.inl.

◆ Minutes() [2/2]

template<typename T , typename U >
constexpr T Divide::Time::Minutes ( a)
constexpr

Definition at line 677 of file MathHelper.inl.

◆ Nanoseconds() [1/2]

template<typename T >
constexpr T Divide::Time::Nanoseconds ( a)
constexpr

Definition at line 665 of file MathHelper.inl.

◆ Nanoseconds() [2/2]

template<typename T , typename U >
constexpr T Divide::Time::Nanoseconds ( a)
constexpr

Definition at line 701 of file MathHelper.inl.

◆ NanosecondsToMicroseconds()

template<typename T = U64, typename U >
constexpr T Divide::Time::NanosecondsToMicroseconds ( a)
constexprnoexcept

Definition at line 719 of file MathHelper.inl.

◆ NanosecondsToMilliseconds()

template<typename T = D64, typename U >
constexpr T Divide::Time::NanosecondsToMilliseconds ( a)
constexprnoexcept

Definition at line 713 of file MathHelper.inl.

◆ NanosecondsToSeconds()

template<typename T = D64, typename U >
constexpr T Divide::Time::NanosecondsToSeconds ( a)
constexprnoexcept

Definition at line 707 of file MathHelper.inl.

◆ PRINT_TIMER() [1/2]

string Divide::Time::PRINT_TIMER ( const ProfileTimer timer)
inline

Definition at line 67 of file ProfileTimer.inl.

◆ PRINT_TIMER() [2/2]

string Divide::Time::PRINT_TIMER ( ProfileTimer timer)

◆ QUERY_TIMER()

U64 Divide::Time::QUERY_TIMER ( const ProfileTimer timer)
inlinenoexcept

Definition at line 72 of file ProfileTimer.inl.

◆ REMOVE_TIMER()

void Divide::Time::REMOVE_TIMER ( ProfileTimer *&  timer)
inline

Definition at line 77 of file ProfileTimer.inl.

◆ Seconds() [1/2]

template<typename T >
constexpr T Divide::Time::Seconds ( a)
constexpr

Definition at line 647 of file MathHelper.inl.

◆ Seconds() [2/2]

template<typename T , typename U >
constexpr T Divide::Time::Seconds ( a)
constexpr

Definition at line 683 of file MathHelper.inl.

◆ SecondsToMicroseconds()

template<typename T = U64, typename U >
constexpr T Divide::Time::SecondsToMicroseconds ( a)
constexprnoexcept

Definition at line 767 of file MathHelper.inl.

◆ SecondsToMilliseconds()

template<typename T = D64, typename U >
constexpr T Divide::Time::SecondsToMilliseconds ( a)
constexprnoexcept

Definition at line 761 of file MathHelper.inl.

◆ SecondsToNanoseconds()

template<typename T = U64, typename U >
constexpr T Divide::Time::SecondsToNanoseconds ( a)
constexprnoexcept

Definition at line 773 of file MathHelper.inl.

◆ START_TIMER()

void Divide::Time::START_TIMER ( ProfileTimer timer)
inlinenoexcept

Definition at line 57 of file ProfileTimer.inl.

◆ STOP_TIMER()

void Divide::Time::STOP_TIMER ( ProfileTimer timer)
inlinenoexcept

Definition at line 62 of file ProfileTimer.inl.