nl::Weave::Warm

Namespace ini mencakup antarmuka untuk Weave Address and Routing Module, sebuah Modul portabel untuk mengonfigurasi alamat IP dan Rute Weave.

Ringkasan

Enumerasi

ActionType{
  kActionTypeWiFiHostAddress = (1 << 0),
  kActionTypeThreadHostAddress = (1 << 1),
  kActionTypeThreadThreadAddress = (1 << 2),
  kActionTypeLegacy6LoWPANHostAddress = (1 << 3),
  kActionTypeLegacy6LoWPANThreadAddress = (1 << 4),
  kActionTypeHostRouteThread = (1 << 5),
  kActionTypeThreadAdvertisement = (1 << 6),
  kActionTypeThreadRoute = (1 << 7),
  kActionTypeTunnelHostAddress = (1 << 8),
  kActionTypeTunnelHostRoute = (1 << 9),
  kActionTypeThreadRoutePriority = (1 << 10),
  kActionTypeTunnelServiceRoute = (1 << 11),
  kActionTypeMax = (1 << 16)
}
enum
InitState{
  kInitStateNotInitialized = 0
}
enum
InterfaceState enum
Enum kemungkinan nilai Status Antarmuka.
InterfaceType{
  kInterfaceTypeLegacy6LoWPAN = 0,
  kInterfaceTypeThread,
  kInterfaceTypeWiFi,
  kInterfaceTypeTunnel,
  kInterfaceTypeCellular
}
enum
Enum kemungkinan jenis antarmuka.
PlatformActionExecution{
  kPlatformActionExecutionContinue = false,
  kPlatformActionExecutionSuspendForAsynchOpCompletion = true
}
enum
PlatformResult{
  kPlatformResultSuccess = 0,
  kPlatformResultFailure,
  kPlatformResultInProgress
}
enum
Enum kemungkinan nilai yang ditampilkan API platform.
RoutePriority enum
Enum kemungkinan prioritas rute sehingga satu rute dapat diprioritaskan di atas rute lainnya.
SystemFeatureType{
  kSystemFeatureTypeIsFabricMember = (1 << 0),
  kSystemFeatureTypeWiFiConnected = (1 << 1),
  kSystemFeatureTypeThreadConnected = (1 << 2),
  kSystemFeatureTypeThreadRoutingEnabled = (1 << 3),
  kSystemFeatureTypeBorderRoutingEnabled = (1 << 4),
  kSystemFeatureTypeTunnelInterfaceEnabled = (1 << 5),
  kSystemFeatureTypeTunnelState = (1 << 6),
  kSystemFeatureTypeCellularConnected = (1 << 7),
  kSystemFeatureTypeMax = (1 << 16)
}
enum

Typedef

ActionFunction)(ActionType inAction, bool inActivate, const uint64_t &inGlobalId, const uint64_t &inInterfaceId) typedef
FlagsType typedef
uint16_t

Variabel

kGlobalULAPrefixLength = 48
const uint8_t
kLegacy6LoWPANULAAddressPrefixLength = 64
const uint8_t
kThreadULAAddressPrefixLength = 64
const uint8_t
kTunnelAddressPrefixLength = 128
const uint8_t
kWiFiULAAddressPrefixLength = 64
const uint8_t
sFabricStateDelegate
sState

Fungsi

BorderRouterStateChange(InterfaceState inState)
void
WARM API dipanggil untuk mengumumkan perubahan Status untuk fitur router Batas.
CellularInterfaceStateChange(InterfaceState inState)
void
WARM API dipanggil untuk mengumumkan perubahan Status untuk antarmuka Cellular.
FabricStateChange(InterfaceState inState)
void
Fungsi yang dipanggil untuk mengumumkan perubahan Status untuk fitur Weave Fabric.
GetCurrentActionState(ActionType inAction)
bool
Fungsi statis yang menampilkan Status saat ini dari tindakan yang ditentukan.
GetFabricState(const WeaveFabricState *& outFabricState)
WARM API untuk memperoleh objek FabricState yang diberikan ke Warm selama Init.
GetSystemFeatureState(SystemFeatureType inSystemFeature)
bool
Fungsi statis yang mendapatkan Status fitur Sistem saat ini.
GetULA(InterfaceType inInterfaceType, Inet::IPAddress & outAddress)
WARM API guna memperoleh ULA untuk jenis antarmuka tertentu.
Init(WeaveFabricState & inFabricState)
WARM API untuk melakukan inisialisasi modul satu kali.
InvokeActions(void)
void
WARM API dipanggil oleh tugas khusus untuk melakukan berbagai tindakan API platform.
LegacyHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Salah satu metode Action.
LegacyThreadAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Salah satu metode Action.
MakePrefix(const uint64_t & inGlobalID, const uint16_t subnetId, const uint8_t inPrefixLen, Inet::IPPrefix & outPrefix)
void
Sebuah utilitas untuk membangun awalan 48 bit dari globalID.
MapAvailabilityToPriority(Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
Fungsi statis yang menampilkan pemetaan dari TunnelAvailability ke RoutePriority.
RecordPlatformResult(PlatformResult inResult, ActionType inAction, bool inActionState)
Fungsi statis yang mencatat hasil panggilan Tindakan API platform.
ReportActionComplete(PlatformResult inResult)
void
WARM API dipanggil untuk mengumumkan penyelesaian panggilan API platform asinkron sebelumnya.
SetCurrentActionState(ActionType inAction, bool inValue)
void
Fungsi statis yang menetapkan Status saat ini dari tindakan yang ditentukan.
SetSystemFeatureState(SystemFeatureType inSystemFeature, bool inValue)
bool
Fungsi statis yang menetapkan Status Fitur Sistem saat ini.
ShouldPerformAction(ActionType inAction, FlagsType inNecessarySystemFeatureState, bool & outActivate)
bool
Fungsi statis yang menentukan apakah tindakan yang ditentukan harus dilakukan atau tidak.
SystemFeatureStateChangeHandler(SystemFeatureType inSystemFeatureType, bool inState)
void
Fungsi statis yang Menetapkan status Fitur Sistem dan memberi tahu platform bahwa status peristiwa telah berubah.
TakeActions(void)
void
Fungsi statis yang menguji Status setiap tindakan dan membuat panggilan API platform untuk mengubah Status tindakan jika diperlukan.
ThreadAdvertisementAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Salah satu metode Action.
ThreadHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Salah satu metode Action.
ThreadHostRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Salah satu metode Action.
ThreadInterfaceStateChange(InterfaceState inState)
void
WARM API dipanggil untuk mengumumkan perubahan Status untuk antarmuka Thread.
ThreadRoutePriorityAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Salah satu metode Action.
ThreadRoutingStateChange(InterfaceState inState)
void
WARM API dipanggil untuk mengumumkan perubahan Status untuk fitur Thread Routing.
ThreadThreadAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Salah satu metode Action.
ThreadThreadRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Salah satu metode Action.
TunnelHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Salah satu metode Action.
TunnelHostRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Salah satu metode Action.
TunnelInterfaceStateChange(InterfaceState inState)
void
WARM API dipanggil untuk mengumumkan perubahan Status untuk antarmuka Weave Tunnel.
TunnelPriorityStateChange(nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
void
WARM API dipanggil untuk mengupdate prioritas Tunnel Service.
TunnelServiceStateChange(InterfaceState inState, nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
void
WARM API dipanggil untuk mengumumkan perubahan Status untuk antarmuka Weave Tunnel.
WiFiHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Salah satu metode Action.
WiFiInterfaceStateChange(InterfaceState inState)
void
WARM API dipanggil untuk mengumumkan perubahan Status untuk antarmuka WiFi.

Class

nl::Weave::Warm::WarmFabricStateDelegate

Ini adalah class internal untuk WarmCore.

Struct

nl::Weave::Warm::ActionEntry
nl::Weave::Warm::ModuleState

Namespace

nl::Weave::Warm::Platform

Enumerasi

ActionType

 ActionType
Properti
kActionTypeHostRouteThread

Add | Menghapus rute IP untuk Thread Interface di stack IP host.

kActionTypeLegacy6LoWPANHostAddress

Add | Hapus alamat IP untuk Antarmuka 6LowPAN Lama pada stack IP host.

kActionTypeLegacy6LoWPANThreadAddress

Add | Hapus alamat IP untuk Antarmuka 6LowPAN Lama pada stack IP Modul Thread.

kActionTypeMax

JANGAN LEBIH; cadangan untuk menandai jumlah maksimal bit yang tersedia.

kActionTypeThreadAdvertisement

Mulai | Menghentikan iklan rute dengan Modul Thread.

kActionTypeThreadHostAddress

Add | Hapus alamat IP untuk Thread Interface di stack IP host.

kActionTypeThreadRoute

Add | Menghapus rute IP pada Modul Thread untuk dukungan Rute Batas.

kActionTypeThreadRoutePriority

Mengubah Prioritas Rute Rute Thread di Modul Thread.

kActionTypeThreadThreadAddress

Add | Hapus alamat IP untuk Antarmuka Thread pada stack IP Modul Thread.

kActionTypeTunnelHostAddress

Add | Hapus alamat IP untuk Tunnel Interface pada tumpukan IP host.

kActionTypeTunnelHostRoute

Add | Menghapus rute IP untuk Tunnel Interface pada stack IP host.

kActionTypeTunnelServiceRoute

Add | Hapus rute IP 64 bit untuk subnet Layanan pada stack IP host.

kActionTypeWiFiHostAddress

Add | Hapus alamat IP untuk Antarmuka WiFi pada tumpukan IP host.

InitState

 InitState
Properti
kInitStateNotInitialized

Nilainya harus 0 agar nilai awal mInitState akan menjadi kInitStateNotInitialized.

InterfaceState

 InterfaceState

Enum kemungkinan nilai Status Antarmuka.

InterfaceType

 InterfaceType

Enum kemungkinan jenis antarmuka.

Properti
kInterfaceTypeCellular

Antarmuka Seluler.

kInterfaceTypeLegacy6LoWPAN

Antarmuka alarm thread.

kInterfaceTypeThread

Antarmuka thread.

kInterfaceTypeTunnel

Antarmuka Tunnel.

kInterfaceTypeWiFi

Antarmuka Wi-Fi.

PlatformActionExecution

 PlatformActionExecution
Properti
kPlatformActionExecutionContinue

lanjutkan eksekusi tindakan.

kPlatformActionExecutionSuspendForAsynchOpCompletion

menangguhkan eksekusi tindakan agar operasi asinkron selesai.

PlatformResult

 PlatformResult

Enum kemungkinan nilai yang ditampilkan API platform.

Properti
kPlatformResultFailure

Eksekusi API gagal.

kPlatformResultInProgress

Operasi sedang berlangsung dan akan selesai secara asinkron.

kPlatformResultSuccess

API berhasil diselesaikan.

RoutePriority

 RoutePriority

Enum kemungkinan prioritas rute sehingga satu rute dapat diprioritaskan di atas rute lainnya.

SystemFeatureType

 SystemFeatureType
Properti
kSystemFeatureTypeBorderRoutingEnabled

Fitur Perutean Batas Sistem IS | TIDAK diaktifkan.

kSystemFeatureTypeCellularConnected

Antarmuka Seluler Sistem IS | TIDAK terhubung.

kSystemFeatureTypeIsFabricMember

Modul Weave Sistem ADALAH | BUKAN anggota dari sebuah kain.

kSystemFeatureTypeMax

JANGAN LEBIH; cadangan untuk menandai jumlah maksimal bit yang tersedia.

kSystemFeatureTypeThreadConnected

Antarmuka Thread Sistem IS | TIDAK terhubung.

kSystemFeatureTypeThreadRoutingEnabled

Fitur Perutean Thread Sistem IS | TIDAK diaktifkan.

kSystemFeatureTypeTunnelInterfaceEnabled

Antarmuka Tunnel Sistem adalah | TIDAK diaktifkan.

kSystemFeatureTypeTunnelState

Layanan Terowongan Sistem ADALAH | TIDAK ditetapkan.

kSystemFeatureTypeWiFiConnected

Antarmuka Wi-Fi Sistem IS | TIDAK terhubung.

Typedef

ActionFunction

PlatformResult(* ActionFunction)(ActionType inAction, bool inActivate, const uint64_t &inGlobalId, const uint64_t &inInterfaceId)

FlagsType

uint16_t FlagsType

Variabel

kGlobalULAPrefixLength

const uint8_t kGlobalULAPrefixLength = 48

kLegacy6LoWPANULAAddressPrefixLength

const uint8_t kLegacy6LoWPANULAAddressPrefixLength = 64

kThreadULAAddressPrefixLength

const uint8_t kThreadULAAddressPrefixLength = 64

kTunnelAddressPrefixLength

const uint8_t kTunnelAddressPrefixLength = 128

kWiFiULAAddressPrefixLength

const uint8_t kWiFiULAAddressPrefixLength = 64

sFabricStateDelegate

WarmFabricStateDelegate sFabricStateDelegate

sState

ModuleState sState

Fungsi

BorderRouterStateChange

void BorderRouterStateChange(
  InterfaceState inState
)

WARM API dipanggil untuk mengumumkan perubahan Status untuk fitur router Batas.

Detail
Parameter
[in] inState
kInterfaceStateUp jika fitur router Border aktif, dan kInterfaceStateDown jika tidak.

CellularInterfaceStateChange

void CellularInterfaceStateChange(
  InterfaceState inState
)

WARM API dipanggil untuk mengumumkan perubahan Status untuk antarmuka Cellular.

Detail
Parameter
[in] inState
kInterfaceStateUp jika antarmuka Cellular aktif, dan kInterfaceStateDown jika tidak.

FabricStateChange

void FabricStateChange(
  InterfaceState inState
)

Fungsi yang dipanggil untuk mengumumkan perubahan Status untuk fitur Weave Fabric.

Detail
Parameter
[in] inState
kInterfaceStateUp jika sistem adalah anggota fabric Weave, dan kInterfaceStateDown.

GetCurrentActionState

bool GetCurrentActionState(
  ActionType inAction
)

Fungsi statis yang menampilkan Status saat ini dari tindakan yang ditentukan.

Detail
Parameter
[in] inAction
Jenis tindakan untuk kueri.
Hasil
true jika tindakan ditetapkan, false jika tidak.

GetFabricState

WEAVE_ERROR GetFabricState(
  const WeaveFabricState *& outFabricState
)

WARM API untuk memperoleh objek FabricState yang diberikan ke Warm selama Init.

Detail
Parameter
[out] outFabricState
Referensi pointer ke objek fabricState.
Nilai Pengembalian
WEAVE_NO_ERROR
Setelah berhasil.
WEAVE_ERROR_INCORRECT_STATE
Jika API ini dipanggil sebelum WARM diinisialisasi.

GetSystemFeatureState

bool GetSystemFeatureState(
  SystemFeatureType inSystemFeature
)

Fungsi statis yang mendapatkan Status fitur Sistem saat ini.

Detail
Parameter
[in] inSystemFeature
Fitur Sistem untuk mengkueri.
Hasil
true jika Fitur Sistem diaktifkan, false jika tidak.

GetULA

WEAVE_ERROR GetULA(
  InterfaceType inInterfaceType,
  Inet::IPAddress & outAddress
)

WARM API guna memperoleh ULA untuk jenis antarmuka tertentu.

Detail
Parameter
[in] inInterfaceType
Jenis antarmuka yang diinginkan ULA.
[out] outAddress
Objek alamat yang digunakan untuk menyimpan ULA yang dihasilkan.
Nilai Pengembalian
WEAVE_NO_ERROR
Setelah berhasil.
WEAVE_ERROR_INCORRECT_STATE
Jika API ini dipanggil saat WARM bukan anggota Fabric.
WEAVE_ERROR_INVALID_ARGUMENT
Jika API ini dipanggil dengan Jenis Antarmuka yang tidak valid.

Inisiasi

WEAVE_ERROR Init(
  WeaveFabricState & inFabricState
)

WARM API untuk melakukan inisialisasi modul satu kali.

Detail
Parameter
[in] inFabricState
Referensi ke WeaveFabricState yang valid.
Nilai Pengembalian
WEAVE_NO_ERROR
Saat inisialisasi berhasil.
WEAVE_ERROR_INCORRECT_STATE
Jika Init dipanggil lebih dari sekali.
other
Kode error jika tidak.
Hasil
WEAVE_NO_ERROR jika berhasil, kode error jika tidak.

InvokeActions

void InvokeActions(
  void
)

WARM API dipanggil oleh tugas khusus untuk melakukan berbagai tindakan API platform.

Ini mewakili titik entri untuk melakukan tindakan yang diperlukan yang akan memenuhi Status Sistem saat ini. Misalnya, jika stack Thread ditransisikan dari nonaktif ke diaktifkan, fungsi ini akan melakukan panggilan platform yang diperlukan untuk menetapkan alamat host thread, dll. Fungsi ini harus dipanggil oleh kode platform hanya sebagai respons terhadap panggilan Warm ke RequestInvokeActions. Memanggil InvokeActions akan menghasilkan satu atau beberapa panggilan ke API nl::Warm::Platform. Oleh karena itu, developer harus menerapkan RequestInvokeActions dan pemanggil InvokeActions() dengan tepat. RequestInvokeActions mungkin sesuai untuk memposting peristiwa ke tugas yang dapat memanggil InvokeActions(), misalnya. Sebaliknya, jika sistemnya adalah thread tunggal, RequestInvokeActions dapat diimplementasikan untuk memanggil InvokeActions() secara langsung.

LegacyHostAddressAction

PlatformResult LegacyHostAddressAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Salah satu metode Action.

Menetapkan Alamat Host untuk Antarmuka Lama.

Detail
Parameter
[in] inAction
Jenis tindakan.
[in] inActivate
Status yang diinginkan true == activate, false == disable.
[in] inGlobalId
Referensi ke ID Global Weave jika diperlukan untuk menghitung alamat.
[in] inInterfaceId
Referensi ke ID antarmuka perangkat jika diperlukan untuk menghitung alamat.
Hasil
Meneruskan hasil dari Platform::HostAddress().

LegacyThreadAddressAction

PlatformResult LegacyThreadAddressAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Salah satu metode Action.

Menetapkan Alamat Thread untuk Antarmuka 6LoWPAN Lama.

Detail
Parameter
[in] inAction
Jenis tindakan.
[in] inActivate
Status yang diinginkan true == activate, false == disable.
[in] inGlobalId
Referensi ke ID Global Weave jika diperlukan untuk menghitung alamat.
[in] inInterfaceId
Referensi ke ID antarmuka perangkat jika diperlukan untuk menghitung alamat.
Hasil
Meneruskan hasil dari Platform::ThreadAddress().

MakePrefix

void MakePrefix(
  const uint64_t & inGlobalID,
  const uint16_t subnetId,
  const uint8_t inPrefixLen,
  Inet::IPPrefix & outPrefix
)

Sebuah utilitas untuk membangun awalan 48 bit dari globalID.

Detail
Parameter
[in] inGlobalID
Referensi ke Weave Global ID.
[out] outPrefix
Awalan yang akan diinisialisasi.

MapAvailabilityToPriority

RoutePriority MapAvailabilityToPriority(
  Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability
)

Fungsi statis yang menampilkan pemetaan dari TunnelAvailability ke RoutePriority.

Detail
Parameter
[in] inAvailability
Mode ketersediaan tunnel Weave.
Hasil
Nilai prioritas yang dipetakan.

RecordPlatformResult

PlatformActionExecution RecordPlatformResult(
  PlatformResult inResult,
  ActionType inAction,
  bool inActionState
)

Fungsi statis yang mencatat hasil panggilan Tindakan API platform.

Modul ini membuat permintaan untuk melakukan tindakan melalui API khusus platform. API diperlukan untuk melaporkan hasil kPlatformResultSuccess|kPlatformResultFailure|kPlatformResultInProgress dari permintaan tindakan tersebut. Fungsi ini mencatat hasil tersebut dan menampilkan nilai benar (true) jika hasilnya sedang berlangsung dan tindakan lebih lanjut harus ditunda.

Detail
Parameter
[in] inResult
Hasil API platform.
[in] inAction
Tindakan yang dicoba oleh API platform.
[in] inActionState
Status baru tindakan jika hasilnya berhasil.
Hasil
true, API platform akan memproses permintaan secara asinkron, false jika tidak.

ReportActionComplete

void ReportActionComplete(
  PlatformResult inResult
)

WARM API dipanggil untuk mengumumkan penyelesaian panggilan API platform asinkron sebelumnya.

Diasumsikan bahwa API tindakan platform mungkin perlu melakukan operasi asinkron. Jika pernyataan ini benar, API platform akan menampilkan kPlatformResultInProgress. Saat hal ini terjadi, Tindakan Perutean dan Alamat baru akan ditangguhkan hingga sistem memanggil ReportActionComplete untuk mengumumkan penyelesaian operasi.

Detail
Parameter
[in] inResult
Hasil tindakan yang tertunda. harus berupa salah satu dari: {kPlatformResultSuccess | kPlatformResultFailure}

SetCurrentActionState

void SetCurrentActionState(
  ActionType inAction,
  bool inValue
)

Fungsi statis yang menetapkan Status saat ini dari tindakan yang ditentukan.

Detail
Parameter
[in] inAction
Jenis tindakan yang akan diubah.
[in] inValue
Nilai State baru yang akan diadopsi.

SetSystemFeatureState

bool SetSystemFeatureState(
  SystemFeatureType inSystemFeature,
  bool inValue
)

Fungsi statis yang menetapkan Status Fitur Sistem saat ini.

Detail
Parameter
[in] inSystemFeature
SystemFeature yang akan ditetapkan.
[in] inValue
Nilai State baru yang akan diadopsi.
Hasil
true jika Fitur Sistem diubah, false jika tidak.

ShouldPerformAction

bool ShouldPerformAction(
  ActionType inAction,
  FlagsType inNecessarySystemFeatureState,
  bool & outActivate
)

Fungsi statis yang menentukan apakah tindakan yang ditentukan harus dilakukan atau tidak.

Fungsi ini memeriksa kondisi tanda Status Fitur Sistem dan menentukan apakah tindakan yang ditentukan harus diaktifkan atau dinonaktifkan. Fungsi ini kemudian memeriksa status tindakan saat ini dan jika tindakan tidak disetel ke nilai yang diperlukan oleh Status Fitur Sistem, fungsi akan menampilkan nilai benar (true) bersama dengan status tindakan yang diinginkan di outActivate

Detail
Parameter
[in] inAction
Tindakan yang akan dikueri.
[in] inNecessarySystemFeatureState
Flag Status yang diperlukan agar tindakan dapat aktif.
[out] outActivate
Status tindakan yang diinginkan.
Hasil
true jika tindakan saat ini tidak dalam status yang diinginkan, false jika tidak.

SystemFeatureStateChangeHandler

void SystemFeatureStateChangeHandler(
  SystemFeatureType inSystemFeatureType,
  bool inState
)

Fungsi statis yang Menetapkan status Fitur Sistem dan memberi tahu platform bahwa status peristiwa telah berubah.

Dipanggil oleh EventStateChange API untuk melakukan operasi reaksi yang diperlukan.

Detail
Parameter
[in] inSystemFeatureType
Status yang berubah sesuai dengan API yang dipanggil.
[in] inState
Nilai baru untuk status.

TakeActions

void TakeActions(
  void
)

Fungsi statis yang menguji Status setiap tindakan dan membuat panggilan API platform untuk mengubah Status tindakan jika diperlukan.

Fungsi ini menggunakan ShouldPerformAction() untuk menentukan apakah suatu status tindakan perlu diubah/diambil. Jika ShouldPerformAction() menampilkan true, fungsi tersebut akan memanggil API tindakan yang sesuai untuk melakukan tindakan guna menempatkannya dalam Status yang diinginkan. Hasil panggilan API tindakan diteruskan ke RecordPlatformResult() dan jika fungsi tersebut menampilkan true, eksekusi fungsi ini akan dihentikan.

ThreadAdvertisementAction

PlatformResult ThreadAdvertisementAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Salah satu metode Action.

Menetapkan Status Iklan Thread

Detail
Parameter
[in] inAction
Jenis tindakan.
[in] inActivate
Status yang diinginkan true == activate, false == disable.
[in] inGlobalId
Referensi ke ID Global Weave jika diperlukan untuk menghitung alamat.
[in] inInterfaceId
Referensi ke ID antarmuka perangkat jika diperlukan untuk menghitung alamat.
Hasil
Meneruskan hasil dari Platform::ThreadAdvertisingment().

ThreadHostAddressAction

PlatformResult ThreadHostAddressAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Salah satu metode Action.

Menetapkan Alamat Host untuk Antarmuka Thread.

Detail
Parameter
[in] inAction
Jenis tindakan.
[in] inActivate
Status yang diinginkan true == activate, false == disable.
[in] inGlobalId
Referensi ke ID Global Weave jika diperlukan untuk menghitung alamat.
[in] inInterfaceId
Referensi ke ID antarmuka perangkat jika diperlukan untuk menghitung alamat.
Hasil
Meneruskan hasil dari Platform::HostAddress().

ThreadHostRouteAction

PlatformResult ThreadHostRouteAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Salah satu metode Action.

Menetapkan Rute Host untuk Antarmuka Thread.

Detail
Parameter
[in] inAction
Jenis tindakan.
[in] inActivate
Status yang diinginkan true == activate, false == disable.
[in] inGlobalId
Referensi ke ID Global Weave jika diperlukan untuk menghitung alamat.
[in] inInterfaceId
Referensi ke ID antarmuka perangkat jika diperlukan untuk menghitung alamat.
Hasil
Meneruskan hasil dari Platform::HostRoute().

ThreadInterfaceStateChange

void ThreadInterfaceStateChange(
  InterfaceState inState
)

WARM API dipanggil untuk mengumumkan perubahan Status untuk antarmuka Thread.

Detail
Parameter
[in] inState
kInterfaceStateUp jika antarmuka Thread aktif, dan kInterfaceStateDown jika tidak.

ThreadRoutePriorityAction

PlatformResult ThreadRoutePriorityAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Salah satu metode Action.

Menetapkan Prioritas Rute Thread berdasarkan Ketersediaan Tunnel.

Detail
Parameter
[in] inAction
Jenis tindakan.
[in] inActivate
Status yang diinginkan true == activate, false == disable.
[in] inGlobalId
Referensi ke ID Global Weave jika diperlukan untuk menghitung alamat.
[in] inInterfaceId
Referensi ke ID antarmuka perangkat jika diperlukan untuk menghitung alamat.
Hasil
Meneruskan hasil dari Platform::ThreadRoutePriority().

ThreadRoutingStateChange

void ThreadRoutingStateChange(
  InterfaceState inState
)

WARM API dipanggil untuk mengumumkan perubahan Status untuk fitur Thread Routing.

Detail
Parameter
[in] inState
kInterfaceStateUp jika fitur perutean Thread aktif, dan kInterfaceStateDown jika tidak.

ThreadThreadAddressAction

PlatformResult ThreadThreadAddressAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Salah satu metode Action.

Menetapkan Alamat Thread untuk Antarmuka Thread.

Detail
Parameter
[in] inAction
Jenis tindakan.
[in] inActivate
Status yang diinginkan true == activate, false == disable.
[in] inGlobalId
Referensi ke ID Global Weave jika diperlukan untuk menghitung alamat.
[in] inInterfaceId
Referensi ke ID antarmuka perangkat jika diperlukan untuk menghitung alamat.
Hasil
Meneruskan hasil dari Platform::ThreadAddress().

ThreadThreadRouteAction

PlatformResult ThreadThreadRouteAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Salah satu metode Action.

Menetapkan Rute Thread untuk Stack Thread.

Detail
Parameter
[in] inAction
Jenis tindakan.
[in] inActivate
Status yang diinginkan true == activate, false == disable.
[in] inGlobalId
Referensi ke ID Global Weave jika diperlukan untuk menghitung alamat.
[in] inInterfaceId
Referensi ke ID antarmuka perangkat jika diperlukan untuk menghitung alamat.
Hasil
Meneruskan hasil dari Platform::ThreadRoute().

TunnelHostAddressAction

PlatformResult TunnelHostAddressAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Salah satu metode Action.

Menetapkan HostAddress untuk Antarmuka Tunnel.

Detail
Parameter
[in] inAction
Jenis tindakan.
[in] inActivate
Status yang diinginkan true == activate, false == disable.
[in] inGlobalId
Referensi ke ID Global Weave jika diperlukan untuk menghitung alamat.
[in] inInterfaceId
Referensi ke ID antarmuka perangkat jika diperlukan untuk menghitung alamat.
Hasil
Meneruskan hasil dari Platform::HostAddress().

TunnelHostRouteAction

PlatformResult TunnelHostRouteAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Salah satu metode Action.

Menetapkan HostRoute untuk Antarmuka Tunnel.

Detail
Parameter
[in] inAction
Jenis tindakan.
[in] inActivate
Status yang diinginkan true == activate, false == disable.
[in] inGlobalId
Referensi ke ID Global Weave jika diperlukan untuk menghitung alamat.
[in] inInterfaceId
Referensi ke ID antarmuka perangkat jika diperlukan untuk menghitung alamat.
Hasil
Meneruskan hasil dari Platform::HostRoute().

TunnelInterfaceStateChange

void TunnelInterfaceStateChange(
  InterfaceState inState
)

WARM API dipanggil untuk mengumumkan perubahan Status untuk antarmuka Weave Tunnel.

Detail
Parameter
[in] inState
kInterfaceStateUp jika antarmuka Weave Tunnel aktif, dan kInterfaceStateDown.

TunnelPriorityStateChange

void TunnelPriorityStateChange(
  nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability
)

WARM API dipanggil untuk mengupdate prioritas Tunnel Service.

Detail
Parameter
[in] inAvailability
Nilai baru untuk status ketersediaan tunnel.

TunnelServiceStateChange

void TunnelServiceStateChange(
  InterfaceState inState,
  nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability
)

WARM API dipanggil untuk mengumumkan perubahan Status untuk antarmuka Weave Tunnel.

Detail
Parameter
[in] inState
kInterfaceStateUp jika Layanan Weave Tunnel ditetapkan, dan kInterfaceStateDown jika tidak.
[in] inAvailability
Status ketersediaan yang akan digunakan nanti dalam mengonfigurasi tunnel.

WiFiHostAddressAction

PlatformResult WiFiHostAddressAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Salah satu metode Action.

Menetapkan Alamat Host untuk Antarmuka Wi-Fi.

Detail
Parameter
[in] inAction
Jenis tindakan.
[in] inActivate
Status yang diinginkan true == activate, false == disable.
[in] inGlobalId
Referensi ke ID Global Weave jika diperlukan untuk menghitung alamat.
[in] inInterfaceId
Referensi ke ID antarmuka perangkat jika diperlukan untuk menghitung alamat.
Hasil
Meneruskan hasil dari Platform::HostAddress().

WiFiInterfaceStateChange

void WiFiInterfaceStateChange(
  InterfaceState inState
)

WARM API dipanggil untuk mengumumkan perubahan Status untuk antarmuka WiFi.

Detail
Parameter
[in] inState
kInterfaceStateUp jika antarmuka WiFi aktif, dan kInterfaceStateDown.