nl::Weave::System::Timer

#include <src/system/SystemTimer.h>

Ini adalah class internal untuk Layer Sistem Weave, yang digunakan untuk mewakili timer satu kali pengambilan 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 mengembalikan 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 akan melakukan de-inisialisasi objek timer dan mencegah timer ini dipicu jika belum melakukannya.
Start(uint32_t aDelayMilliseconds, OnCompleteFunct aOnComplete, void *aAppState)
Error
Metode ini mendaftarkan timer satu kali dengan mekanisme timer dasar yang disediakan oleh platform.

Jenis publik

Zaman

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 dalam milidetik.

OnCompleteFunct

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

Atribut publik

OnComplete

OnCompleteFunct OnComplete

Fungsi statis publik

GetCurrentEpoch

Epoch GetCurrentEpoch(
  void
)

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

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

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 untuk 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
true jika param pertama lebih awal dari yang kedua, false jika tidak.

Fungsi publik

Batal

Error Cancel(
  void
)

Metode ini akan melakukan de-inisialisasi objek timer dan mencegah timer ini dipicu jika belum melakukannya.

Detail
Nilai Pengembalian
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 dasar yang disediakan oleh platform.

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