nl::Weave::System::Timer

#include <src/system/SystemTimer.h>

Ini adalah class internal untuk Lapisan Sistem Weave, yang digunakan untuk menampilkan timer satu kali yang sedang berlangsung.

Ringkasan

Tidak ada antarmuka publik nyata yang tersedia untuk lapisan aplikasi. Metode publik statis yang digunakan untuk memperoleh waktu sistem saat ini dimaksudkan untuk penggunaan internal.

Inheritance

Mewarisi dari: nl::Weave::System::Object

Jenis publik

Epoch typedef
uint64_t
Mewakili epoch dalam skala waktu sistem lokal, biasanya skala waktu POSIX.
OnCompleteFunct)(Layer *aLayer, void *aAppState, Error aError) typedef
void(*

Atribut publik

OnComplete
OnCompleteFunct

Fungsi statis publik

GetCurrentEpoch(void)
Metode ini menampilkan epoch saat ini, yang dikoreksi oleh tidur sistem dengan skala waktu sistem, dalam milidetik.
GetStatistics(nl::Weave::System::Stats::count_t & aNumInUse, nl::Weave::System::Stats::count_t & aHighWatermark)
void
IsEarlierEpoch(const Epoch & first, const Epoch & second)
bool
Membandingkan dua nilai Timer::Epoch dan menampilkan true jika nilai pertama lebih awal dari nilai kedua.

Fungsi publik

Cancel(void)
Error
Metode ini melakukan de-inisialisasi objek timer, dan mencegah timer ini diaktifkan jika belum melakukannya.
Start(uint32_t aDelayMilliseconds, OnCompleteFunct aOnComplete, void *aAppState)
Error
Metode ini mendaftarkan timer satu kali dengan mekanisme timer yang mendasarinya yang disediakan oleh platform.

Jenis publik

Epoch

uint64_t Epoch

Mewakili epoch dalam skala waktu sistem lokal, biasanya skala waktu POSIX.

Unit bergantung pada konteks. Jika digunakan dengan nilai yang ditampilkan oleh GetCurrentEpoch, satuannya adalah milidetik.

OnCompleteFunct

void(* OnCompleteFunct)(Layer *aLayer, void *aAppState, Error aError)

Atribut publik

OnComplete

OnCompleteFunct OnComplete

Fungsi statis publik

GetCurrentEpoch

Epoch GetCurrentEpoch(
  void
)

Metode ini menampilkan epoch saat ini, yang dikoreksi oleh tidur sistem dengan skala waktu sistem, dalam milidetik.

TIDAK DIGUNAKAN LAGI, gunakan System::Layer::GetClock_MonotonicMS().

Detail
Hasil
Stempel waktu dalam milidetik.

GetStatistics

void GetStatistics(
  nl::Weave::System::Stats::count_t & aNumInUse,
  nl::Weave::System::Stats::count_t & aHighWatermark
)

IsEarlierEpoch

bool IsEarlierEpoch(
  const Epoch & first,
  const Epoch & second
)

Membandingkan dua nilai Timer::Epoch dan menampilkan true jika nilai pertama lebih awal dari nilai kedua.

API statis yang dipanggil untuk membandingkan 2 nilai waktu. API ini mencoba memperhitungkan penggabungan timer dengan mengasumsikan bahwa perbedaan antara 2 nilai input hanya akan lebih dari setengah rentang skalar Epoch jika penggabungan timer telah terjadi di antara 2 sampel.

Detail
Hasil
benar (true) jika parameter pertama lebih awal dari parameter kedua, salah (false) jika tidak.

Fungsi publik

Batal

Error Cancel(
  void
)

Metode ini melakukan de-inisialisasi objek timer, dan mencegah timer ini diaktifkan jika belum melakukannya.

Detail
Nilai yang Ditampilkan
WEAVE_SYSTEM_NO_ERROR
Tanpa syarat.

Mulai

Error Start(
  uint32_t aDelayMilliseconds,
  OnCompleteFunct aOnComplete,
  void *aAppState
)

Metode ini mendaftarkan timer satu kali dengan mekanisme timer yang mendasarinya yang disediakan oleh platform.

Detail
Parameter
[in] aDelayMilliseconds
Jumlah milidetik sebelum timer ini diaktifkan
[in] aOnComplete
Pointer ke fungsi callback saat timer ini diaktifkan
[in] aAppState
Pointer arbitrer yang akan diteruskan ke onComplete saat timer ini diaktifkan
Nilai yang Ditampilkan
WEAVE_SYSTEM_NO_ERROR
Tanpa syarat.