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,以新增 / 移除 IP 位址到 Thread TCP/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,以變更 Thread TCP/IP 堆疊上指定介面的現有 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,以新增 / 移除 IP 位址到 Thread TCP/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 用來接收織布狀態更新的 FallStateState 物件指標。
傳回
成功時為 WEAVE_NO_ERROR,否則錯誤代碼。

RequestInvokeActions

void RequestInvokeActions(
  void
)

Warm 會呼叫的平台 API,用於宣告平台應呼叫 InvokeActions。

SetThreadRoutePriority

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

Warm 會呼叫這個平台 API,以變更 Thread TCP/IP 堆疊上指定介面的現有 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 以開始廣告,false 則表示停止廣告。
傳回值
kPlatformResultSuccess
作業順利完成。
kPlatformResultFailure
操作失敗,
kPlatformResultInProgress
這項作業會以非同步方式完成。