nl::Weave::Warm::Platform

摘要

函式

AddRemoveHostAddress(InterfaceType inInterfaceType, const Inet::IPAddress & inAddress, uint8_t inPrefixLength, bool inAdd)
Warm 呼叫的平台 API,會在主機 TCP / IP 堆疊上新增/移除主機 IP 位址。
AddRemoveHostRoute(InterfaceType inInterfaceType, const Inet::IPPrefix & inPrefix, RoutePriority inPriority, bool inAdd)
Warm 呼叫的平台 API,會在主機 TCP / IP 堆疊上新增/移除指定介面的 IP 路徑。
AddRemoveThreadAddress(InterfaceType inInterfaceType, const Inet::IPAddress & inAddress, bool inAdd)
Warm 呼叫的平台 API,會在 Thread TCP / IP 堆疊上新增/移除 IP 位址。
AddRemoveThreadRoute(InterfaceType inInterfaceType, const Inet::IPPrefix & inPrefix, RoutePriority inPriority, bool inAdd)
Warm 呼叫的平台 API,會在 Thread TCP / IP 堆疊上新增/移除指定介面的 IP 路徑。
CriticalSectionEnter(void)
void
Warm 會呼叫的平台 API,以保護內部狀態的存取權。
CriticalSectionExit(void)
void
Warm 會呼叫的平台 API,釋出受保護的內部狀態存取權。
Init(WarmFabricStateDelegate *inFabricStateDelegate)
Warm 會在 nl::Warm::Init run 中呼叫的平台 API。
RequestInvokeActions(void)
void
Warm 會呼叫的平台 API,用來宣布平台應呼叫 InvokeActions。
SetThreadRoutePriority(InterfaceType inInterfaceType, const Inet::IPPrefix & inPrefix, RoutePriority inPriority)
Warm 呼叫的平台 API,會變更現有 IP 路徑在 Thread TCP/IP 堆疊上指定介面的優先順序。
StartStopThreadAdvertisement(InterfaceType inInterfaceType, const Inet::IPPrefix & inPrefix, bool inStart)
Warm 用來呼叫以開始 / 停止在 Thread 介面中發出 IP 前置字串的平台 API。

函式

AddRemoveHostAddress

PlatformResult AddRemoveHostAddress(
  InterfaceType inInterfaceType,
  const Inet::IPAddress & inAddress,
  uint8_t inPrefixLength,
  bool inAdd
)

Warm 呼叫的平台 API,會在主機 TCP / IP 堆疊上新增/移除主機 IP 位址。

作業完成後,平台必須呼叫 ReportActionComplete,並顯示最終結果。

詳細資料
參數
[in] inInterfaceType
要修改的介面。
[in] inAddress
要新增/移除的 IP 位址。
[in] inPrefixLength
inAddress 的前置字串長度。
[in] inAdd
true 以新增地址,false 表示移除地址。
傳回值
kPlatformResultSuccess
作業已順利完成。
kPlatformResultFailure
作業失敗,
kPlatformResultInProgress
這項作業會以非同步方式完成。

AddRemoveHostRoute

PlatformResult AddRemoveHostRoute(
  InterfaceType inInterfaceType,
  const Inet::IPPrefix & inPrefix,
  RoutePriority inPriority,
  bool inAdd
)

Warm 呼叫的平台 API,會在主機 TCP / IP 堆疊上新增/移除指定介面的 IP 路徑。

作業完成後,平台必須呼叫 ReportActionComplete,並顯示最終結果。

詳細資料
參數
[in] inInterfaceType
要修改的介面。
[in] inPrefix
要新增 / 移除的 IP 前置字串,
[in] inPriority
指派路線時採用的優先順序。
[in] inAdd
設為 true 將前置字串新增為路徑,false 則會移除路徑中的前置字串。
傳回值
kPlatformResultSuccess
作業已順利完成。
kPlatformResultFailure
作業失敗,
kPlatformResultInProgress
這項作業會以非同步方式完成。

AddRemoveThreadAddress

PlatformResult AddRemoveThreadAddress(
  InterfaceType inInterfaceType,
  const Inet::IPAddress & inAddress,
  bool inAdd
)

Warm 呼叫的平台 API,會在 Thread TCP / IP 堆疊上新增/移除 IP 位址。

作業完成後,平台必須呼叫 ReportActionComplete,並顯示最終結果。

詳細資料
參數
[in] inInterfaceType
要修改的介面。
[in] inAddress
要新增/移除的 IP 位址。
[in] inAdd
true 以新增地址,false 表示移除地址。
傳回值
kPlatformResultSuccess
作業已順利完成。
kPlatformResultFailure
作業失敗,
kPlatformResultInProgress
這項作業會以非同步方式完成。

AddRemoveThreadRoute

PlatformResult AddRemoveThreadRoute(
  InterfaceType inInterfaceType,
  const Inet::IPPrefix & inPrefix,
  RoutePriority inPriority,
  bool inAdd
)

Warm 呼叫的平台 API,會在 Thread TCP / IP 堆疊上新增/移除指定介面的 IP 路徑。

作業完成後,平台必須呼叫 ReportActionComplete,並顯示最終結果。

詳細資料
參數
[in] inInterfaceType
要修改的介面。
[in] inPrefix
要指派 / 移除的 IP 前置字串。
[in] inPriority
指派路線時採用的優先順序。
[in] inAdd
設為 true 將前置字串新增為路徑,false 則會移除路徑中的前置字串。
傳回值
kPlatformResultSuccess
作業已順利完成。
kPlatformResultFailure
作業失敗,
kPlatformResultInProgress
這項作業會以非同步方式完成。

CriticalSectionEnter

void CriticalSectionEnter(
  void
)

Warm 會呼叫的平台 API,以保護內部狀態的存取權。

CriticalSectionExit

void CriticalSectionExit(
  void
)

Warm 會呼叫的平台 API,釋出受保護的內部狀態存取權。

Init

WEAVE_ERROR Init(
  WarmFabricStateDelegate *inFabricStateDelegate
)

Warm 會在 nl::Warm::Init run 中呼叫的平台 API。

詳細資料
參數
[in] inFabricStateDelegate
指向 Warm 用來接收布料狀態更新的 FrameStateDelegate 物件的指標。
傳回
成功時傳回 WEAVE_NO_ERROR,否則會傳回錯誤代碼。

RequestInvokeActions

void RequestInvokeActions(
  void
)

Warm 會呼叫的平台 API,用來宣布平台應呼叫 InvokeActions。

,瞭解如何調查及移除這項存取權。

SetThreadRoutePriority

PlatformResult SetThreadRoutePriority(
  InterfaceType inInterfaceType,
  const Inet::IPPrefix & inPrefix,
  RoutePriority inPriority
)

Warm 呼叫的平台 API,會變更現有 IP 路徑在 Thread TCP/IP 堆疊上指定介面的優先順序。

作業完成後,平台必須呼叫 ReportActionComplete,並顯示最終結果。

詳細資料
參數
[in] inInterfaceType
要修改的介面。
[in] inPrefix
要修改的 IP 前置字串。
[in] inPriority
要套用至路徑的新優先順序。
傳回值
kPlatformResultSuccess
作業已順利完成。
kPlatformResultFailure
作業失敗,
kPlatformResultInProgress
這項作業會以非同步方式完成。

StartStopThreadAdvertisement

PlatformResult StartStopThreadAdvertisement(
  InterfaceType inInterfaceType,
  const Inet::IPPrefix & inPrefix,
  bool inStart
)

Warm 用來呼叫以開始 / 停止在 Thread 介面中發出 IP 前置字串的平台 API。

作業完成後,平台必須呼叫 ReportActionComplete,並顯示最終結果。

詳細資料
參數
[in] inInterfaceType
要修改的介面。
[in] inPrefix
應該啟動 / 停止廣告的 IP 前置字串。
[in] inStart
true。
傳回值
kPlatformResultSuccess
作業已順利完成。
kPlatformResultFailure
作業失敗,
kPlatformResultInProgress
這項作業會以非同步方式完成。