nl::Weave::Warm

Namespace ini mencakup antarmuka untuk Modul Perutean dan Alamat Weave, yakni 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 nilai Status Antarmuka yang mungkin.
InterfaceType{
  kInterfaceTypeLegacy6LoWPAN = 0,
  kInterfaceTypeThread,
  kInterfaceTypeWiFi,
  kInterfaceTypeTunnel,
  kInterfaceTypeCellular
}
enum
Enum jenis antarmuka yang mungkin.
PlatformActionExecution{
  kPlatformActionExecutionContinue = false,
  kPlatformActionExecutionSuspendForAsynchOpCompletion = true
}
enum
PlatformResult{
  kPlatformResultSuccess = 0,
  kPlatformResultFailure,
  kPlatformResultInProgress
}
enum
Enuman kemungkinan nilai yang ditampilkan API platform.
RoutePriority enum
Enuman kemungkinan prioritas rute sehingga satu rute dapat lebih diprioritaskan daripada rute yang lain.
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 yang 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 tertentu.
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 yang ditentukan.
Init(WeaveFabricState & inFabricState)
WARM API untuk melakukan inisialisasi modul satu kali.
InvokeActions(void)
void
WARM API yang 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
Utilitas untuk membuat 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 merekam hasil panggilan Action API platform.
ReportActionComplete(PlatformResult inResult)
void
WARM API dipanggil untuk mengumumkan selesainya panggilan API platform asinkron sebelumnya.
SetCurrentActionState(ActionType inAction, bool inValue)
void
Fungsi statis yang menetapkan Status saat ini dari tindakan tertentu.
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.
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 yang dipanggil untuk mengumumkan perubahan Status untuk fitur Perutean Thread.
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 yang dipanggil untuk mengumumkan perubahan Status untuk antarmuka Weave Tunnel.
TunnelPriorityStateChange(nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
void
WARM API dipanggil untuk memperbarui prioritas Tunnel Service.
TunnelServiceStateChange(InterfaceState inState, nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
void
WARM API yang 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 yang 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

Tambahkan | Hapus rute IP untuk Antarmuka Thread di stack IP host.

kActionTypeLegacy6LoWPANHostAddress

Tambahkan | Hapus alamat IP untuk Antarmuka 6LowPAN Lama di stack IP host.

kActionTypeLegacy6LoWPANThreadAddress

Tambahkan | Hapus alamat IP untuk Legacy 6LowPAN Interface di stack IP Modul Thread.

kActionTypeMax

JANGAN TERLAMPAUI; dicadangkan untuk menandai bit maksimum yang tersedia.

kActionTypeThreadAdvertisement

Mulai | Hentikan pemberitahuan rute oleh Modul Thread.

kActionTypeThreadHostAddress

Tambahkan | Hapus alamat IP untuk Antarmuka Thread di stack IP host.

kActionTypeThreadRoute

Tambahkan | Hapus rute IP di Thread Module untuk dukungan Border Route.

kActionTypeThreadRoutePriority

Mengubah Prioritas Rute pada Rute Thread pada Modul Thread.

kActionTypeThreadThreadAddress

Tambahkan | Hapus alamat IP untuk Antarmuka Thread di stack IP Modul Thread.

kActionTypeTunnelHostAddress

Tambahkan | Hapus alamat IP untuk Antarmuka Tunnel pada stack IP host.

kActionTypeTunnelHostRoute

Tambahkan | Hapus rute IP untuk Antarmuka Tunnel pada stack IP host.

kActionTypeTunnelServiceRoute

Tambahkan | Hapus rute IP 64 bit untuk subnet Service di stack IP host.

kActionTypeWiFiHostAddress

Tambahkan | Hapus alamat IP untuk Antarmuka Wi-Fi di stack IP host.

InitState

 InitState
Properti
kInitStateNotInitialized

Nilainya harus 0 sehingga nilai awal mInitState akan menjadi kInitStateNotInitialized.

InterfaceState

 InterfaceState

Enum nilai Status Antarmuka yang mungkin.

InterfaceType

 InterfaceType

Enum jenis antarmuka yang mungkin.

Properti
kInterfaceTypeCellular

Antarmuka Seluler.

kInterfaceTypeLegacy6LoWPAN

Antarmuka alarm thread.

kInterfaceTypeThread

Antarmuka thread.

kInterfaceTypeTunnel

Antarmuka Tunnel.

kInterfaceTypeWiFi

Antarmuka WiFi.

PlatformActionExecution

 PlatformActionExecution
Properti
kPlatformActionExecutionContinue

melanjutkan eksekusi tindakan.

kPlatformActionExecutionSuspendForAsynchOpCompletion

menangguhkan eksekusi tindakan agar operasi asinkron selesai.

PlatformResult

 PlatformResult

Enuman 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

Enuman kemungkinan prioritas rute sehingga satu rute dapat lebih diprioritaskan daripada rute yang lain.

SystemFeatureType

 SystemFeatureType
Properti
kSystemFeatureTypeBorderRoutingEnabled

Fitur {i>Border Routing<i} di Sistem | TIDAK diaktifkan.

kSystemFeatureTypeCellularConnected

Antarmuka Seluler Sistem | TIDAK terhubung.

kSystemFeatureTypeIsFabricMember

Modul Weave Sistem IS | BUKAN anggota kain.

kSystemFeatureTypeMax

JANGAN TERLAMPAUI; dicadangkan untuk menandai bit maksimum yang tersedia.

kSystemFeatureTypeThreadConnected

Antarmuka Thread Sistem IS | TIDAK terhubung.

kSystemFeatureTypeThreadRoutingEnabled

Fitur Perutean Thread Sistem IS | TIDAK diaktifkan.

kSystemFeatureTypeTunnelInterfaceEnabled

Antarmuka Terowongan Sistem | TIDAK diaktifkan.

kSystemFeatureTypeTunnelState

Layanan Tunnel Sistem IS | 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, kInterfaceStateDown jika tidak.

CellularInterfaceStateChange

void CellularInterfaceStateChange(
  InterfaceState inState
)

WARM API yang dipanggil untuk mengumumkan perubahan Status untuk antarmuka Cellular.

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

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 kain Weave, atau kInterfaceStateDown.

GetCurrentActionState

bool GetCurrentActionState(
  ActionType inAction
)

Fungsi statis yang menampilkan Status saat ini dari tindakan tertentu.

Detail
Parameter
[in] inAction
Jenis tindakan yang akan dikueri.
Hasil
true jika tindakan ditetapkan ke Set, 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 yang Ditampilkan
WEAVE_NO_ERROR
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 kueri.
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 yang ditentukan.

Detail
Parameter
[in] inInterfaceType
Jenis antarmuka yang diinginkan untuk ULA.
[out] outAddress
Objek alamat yang digunakan untuk menyimpan ULA yang dihasilkan.
Nilai yang Ditampilkan
WEAVE_NO_ERROR
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.

Init

WEAVE_ERROR Init(
  WeaveFabricState & inFabricState
)

WARM API untuk melakukan inisialisasi modul satu kali.

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

InvokeActions

void InvokeActions(
  void
)

WARM API yang 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 tumpukan Thread ditransisikan dari dinonaktifkan ke diaktifkan, fungsi ini akan membuat 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 nl::Warm::Platform API. Oleh karena itu, developer harus menerapkan RequestInvokeActions dan pemanggil InvokeActions() dengan tepat. Mungkin diperlukan RequestInvokeActions untuk memposting peristiwa ke tugas yang, misalnya, memanggil InvokeActions(). Sebaliknya, jika sistem memiliki thread tunggal, RequestInvokeActions dapat diterapkan 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 Thread Address 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
)

Utilitas untuk membuat awalan 48 bit dari globalID.

Detail
Parameter
[in] inGlobalID
Referensi ke ID Global Weave.
[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 yang dipetakan prioritas.

RecordPlatformResult

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

Fungsi statis yang merekam hasil panggilan Action 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 true (benar) 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 tindakan baru jika hasilnya berhasil.
Hasil
true API platform memproses permintaan secara asinkron, salah (false) jika tidak.

ReportActionComplete

void ReportActionComplete(
  PlatformResult inResult
)

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

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

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

SetCurrentActionState

void SetCurrentActionState(
  ActionType inAction,
  bool inValue
)

Fungsi statis yang menetapkan Status saat ini dari tindakan tertentu.

Detail
Parameter
[in] inAction
Jenis tindakan yang akan diubah.
[in] inValue
Nilai Status baru yang akan digunakan.

SetSystemFeatureState

bool SetSystemFeatureState(
  SystemFeatureType inSystemFeature,
  bool inValue
)

Fungsi statis yang menetapkan Status Fitur Sistem saat ini.

Detail
Parameter
[in] inSystemFeature
SystemFeature yang akan disetel.
[in] inValue
Nilai Status baru yang akan digunakan.
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.

Fungsi ini memeriksa kondisi flag 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 tersebut akan menampilkan nilai benar bersama dengan status tindakan yang diinginkan di outActivate

Detail
Parameter
[in] inAction
Tindakan yang akan dikueri.
[in] inNecessarySystemFeatureState
Tanda Status yang diperlukan agar tindakan 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 status tindakan perlu diubah/diambil. Jika ShouldPerformAction() mengembalikan true, fungsi tersebut akan memanggil API tindakan yang sesuai untuk melakukan tindakan guna memasukkannya ke dalam Status yang diinginkan. Hasil panggilan API tindakan diteruskan ke RecordPlatformResult() dan jika fungsi tersebut menampilkan nilai benar, 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::ThreadIklanment().

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 naik, 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 yang dipanggil untuk mengumumkan perubahan Status untuk fitur Perutean Thread.

Detail
Parameter
[in] inState
kInterfaceStateUp jika fitur perutean Thread aktif, 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 Tumpukan 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 yang dipanggil untuk mengumumkan perubahan Status untuk antarmuka Weave Tunnel.

Detail
Parameter
[in] inState
kInterfaceStateUp jika antarmuka Weave Tunnel naik, atau kInterfaceStateDown.

TunnelPriorityStateChange

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

WARM API dipanggil untuk memperbarui 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 yang dipanggil untuk mengumumkan perubahan Status untuk antarmuka Weave Tunnel.

Detail
Parameter
[in] inState
kInterfaceStateUp jika Weave Tunnel Service telah dibuat, atau kInterfaceStateDown.
[in] inAvailability
Status ketersediaan yang akan digunakan nanti saat 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 yang dipanggil untuk mengumumkan perubahan Status untuk antarmuka WiFi.

Detail
Parameter
[in] inState
kInterfaceStateUp jika antarmuka Wi-Fi aktif, atau kInterfaceStateDown.