libxr  1.0
Want to be the best embedded framework
Loading...
Searching...
No Matches
LibXR::MillisecondTimestamp Class Reference

表示毫秒级时间戳的类。Class representing a timestamp in milliseconds. More...

#include <libxr_time.hpp>

Data Structures

class  Duration
 表示毫秒级时间差的类。Class representing a time difference in milliseconds. More...
 

Public Member Functions

 MillisecondTimestamp (uint32_t millisecond)
 
 operator uint32_t () const
 
Duration operator- (const MillisecondTimestamp &old_millisecond) const
 计算两个时间戳之间的时间差。 Computes the time difference between two timestamps.
 

Private Attributes

uint32_t millisecond_
 以毫秒存储的时间戳。Timestamp stored in milliseconds.
 

Detailed Description

表示毫秒级时间戳的类。Class representing a timestamp in milliseconds.

Definition at line 112 of file libxr_time.hpp.

Constructor & Destructor Documentation

◆ MillisecondTimestamp() [1/2]

MillisecondTimestamp::MillisecondTimestamp ( )

Definition at line 70 of file libxr_time.cpp.

70: millisecond_(0) {}
uint32_t millisecond_
以毫秒存储的时间戳。Timestamp stored in milliseconds.

◆ MillisecondTimestamp() [2/2]

MillisecondTimestamp::MillisecondTimestamp ( uint32_t millisecond)

Definition at line 72 of file libxr_time.cpp.

73 : millisecond_(millisecond)
74{
75}

Member Function Documentation

◆ operator uint32_t()

MillisecondTimestamp::operator uint32_t ( ) const

Definition at line 77 of file libxr_time.cpp.

77{ return millisecond_; }

◆ operator-()

MillisecondTimestamp::Duration MillisecondTimestamp::operator- ( const MillisecondTimestamp & old_millisecond) const
nodiscard

计算两个时间戳之间的时间差。 Computes the time difference between two timestamps.

Parameters
old_millisecond旧的时间戳。The older timestamp.
Returns
Duration 计算得到的时间差。Computed time difference.

Definition at line 103 of file libxr_time.cpp.

105{
106 uint32_t diff; // NOLINT
107
108 if (millisecond_ >= old_millisecond.millisecond_)
109 {
110 diff = millisecond_ - old_millisecond.millisecond_;
111 }
112 else
113 {
114 diff =
115 millisecond_ + (libxr_timebase_max_valid_ms - old_millisecond.millisecond_) + 1U;
116 }
117
118 ASSERT(diff <= libxr_timebase_max_valid_ms);
119
120 return Duration(diff);
121}

Field Documentation

◆ millisecond_

uint32_t LibXR::MillisecondTimestamp::millisecond_
private

以毫秒存储的时间戳。Timestamp stored in milliseconds.

Definition at line 176 of file libxr_time.hpp.


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