nl::Weave::Warm

Không gian tên này bao gồm các giao diện cho Mô-đun định tuyến và Địa chỉ Weave. Đây là một Mô-đun di động để định cấu hình các tuyến và địa chỉ IP của Weave.

Tóm tắt

Bảng liệt kê

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 các giá trị Trạng thái giao diện có thể có.
InterfaceType{
  kInterfaceTypeLegacy6LoWPAN = 0,
  kInterfaceTypeThread,
  kInterfaceTypeWiFi,
  kInterfaceTypeTunnel,
  kInterfaceTypeCellular
}
enum
Enum các loại giao diện có thể có.
PlatformActionExecution{
  kPlatformActionExecutionContinue = false,
  kPlatformActionExecutionSuspendForAsynchOpCompletion = true
}
enum
PlatformResult{
  kPlatformResultSuccess = 0,
  kPlatformResultFailure,
  kPlatformResultInProgress
}
enum
Enum các giá trị trả về của API nền tảng có thể có.
RoutePriority enum
Một danh sách các mức độ ưu tiên có thể có của tuyến để một tuyến có thể được ưu tiên hơn một tuyến khác.
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

Biến

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

Hàm

BorderRouterStateChange(InterfaceState inState)
void
Một WARM API được gọi để thông báo về sự thay đổi Trạng thái cho tính năng Bộ định tuyến đường biên.
CellularInterfaceStateChange(InterfaceState inState)
void
API WARM được gọi để thông báo về sự thay đổi Trạng thái cho giao diện Mạng di động.
FabricStateChange(InterfaceState inState)
void
Một hàm được gọi để thông báo về thay đổi Trạng thái cho tính năng Weave Fabric.
GetCurrentActionState(ActionType inAction)
bool
Một hàm tĩnh trả về Trạng thái hiện tại của một thao tác đã chỉ định.
GetFabricState(const WeaveFabricState *& outFabricState)
API WARM để lấy đối tượng FabricState đã được cung cấp cho Warm trong Init.
GetSystemFeatureState(SystemFeatureType inSystemFeature)
bool
Một hàm tĩnh nhận Trạng thái hiện tại của một tính năng trong Hệ thống.
GetULA(InterfaceType inInterfaceType, Inet::IPAddress & outAddress)
WARM API để lấy ULA cho một loại giao diện đã chỉ định.
Init(WeaveFabricState & inFabricState)
API WARM để thực hiện khởi chạy mô-đun một lần.
InvokeActions(void)
void
API WARM do một tác vụ chuyên biệt gọi để thực hiện nhiều thao tác liên quan đến API nền tảng.
LegacyHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Một trong các phương thức Hành động.
LegacyThreadAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Một trong các phương thức Hành động.
MakePrefix(const uint64_t & inGlobalID, const uint16_t subnetId, const uint8_t inPrefixLen, Inet::IPPrefix & outPrefix)
void
Tiện ích để tạo tiền tố 48 bit từ GlobalID.
MapAvailabilityToPriority(Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
Một hàm tĩnh trả về một mục ánh xạ từ TunnelAvailability đến tuyếnPriority.
RecordPlatformResult(PlatformResult inResult, ActionType inAction, bool inActionState)
Một hàm tĩnh ghi lại kết quả của lệnh gọi Hành động API của nền tảng.
ReportActionComplete(PlatformResult inResult)
void
API WARM được gọi để thông báo việc hoàn tất một lệnh gọi API nền tảng không đồng bộ trước đó.
SetCurrentActionState(ActionType inAction, bool inValue)
void
Một hàm tĩnh đặt Trạng thái hiện tại của một thao tác được chỉ định.
SetSystemFeatureState(SystemFeatureType inSystemFeature, bool inValue)
bool
Một hàm tĩnh đặt trạng thái hiện tại của Tính năng hệ thống.
ShouldPerformAction(ActionType inAction, FlagsType inNecessarySystemFeatureState, bool & outActivate)
bool
Một hàm tĩnh xác định xem có nên thực hiện hành động được chỉ định hay không.
SystemFeatureStateChangeHandler(SystemFeatureType inSystemFeatureType, bool inState)
void
Một hàm tĩnh đặt trạng thái Tính năng hệ thống và thông báo cho nền tảng rằng trạng thái sự kiện đã thay đổi.
TakeActions(void)
void
Một hàm tĩnh kiểm tra Trạng thái của mỗi hành động và thực hiện lệnh gọi API nền tảng để thay đổi Trạng thái của hành động nếu cần.
ThreadAdvertisementAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Một trong các phương thức Hành động.
ThreadHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Một trong các phương thức Hành động.
ThreadHostRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Một trong các phương thức Hành động.
ThreadInterfaceStateChange(InterfaceState inState)
void
API WARM được gọi để thông báo về thay đổi Trạng thái cho giao diện Luồng.
ThreadRoutePriorityAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Một trong các phương thức Hành động.
ThreadRoutingStateChange(InterfaceState inState)
void
API WARM được gọi để thông báo về thay đổi Trạng thái cho tính năng Định tuyến luồng.
ThreadThreadAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Một trong các phương thức Hành động.
ThreadThreadRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Một trong các phương thức Hành động.
TunnelHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Một trong các phương thức Hành động.
TunnelHostRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Một trong các phương thức Hành động.
TunnelInterfaceStateChange(InterfaceState inState)
void
Một WARM API được gọi để thông báo về thay đổi Trạng thái cho giao diện Weave Tunnel.
TunnelPriorityStateChange(nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
void
Một WARM API được gọi để cập nhật mức độ ưu tiên của Dịch vụ đường hầm.
TunnelServiceStateChange(InterfaceState inState, nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
void
Một WARM API được gọi để thông báo về thay đổi Trạng thái cho giao diện Weave Tunnel.
WiFiHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Một trong các phương thức Hành động.
WiFiInterfaceStateChange(InterfaceState inState)
void
Một WARM API được gọi để thông báo về sự thay đổi Trạng thái cho giao diện Wi-Fi.

Lớp

nl::Weave::Warm::WarmFabricStateDelegate

Đây là một lớp nội bộ của HeatCore.

Cấu trúc

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

Không gian tên

nl::Weave::Warm::Platform

Bảng liệt kê

ActionType

 ActionType
Thuộc tính
kActionTypeHostRouteThread

Thêm | Xoá tuyến IP cho Giao diện luồng trên ngăn xếp IP của máy chủ.

kActionTypeLegacy6LoWPANHostAddress

Thêm | Xoá địa chỉ IP của giao diện 6LowPAN cũ trên ngăn xếp IP của máy chủ.

kActionTypeLegacy6LoWPANThreadAddress

Thêm | Xoá địa chỉ IP cho giao diện 6LowPAN cũ trên ngăn xếp IP của mô-đun luồng.

kActionTypeMax

KHÔNG Vượt quá; được dành riêng để đánh dấu số bit tối đa có sẵn.

kActionTypeThreadAdvertisement

Bắt đầu | Dừng quảng cáo tuyến đường bằng Mô-đun luồng.

kActionTypeThreadHostAddress

Thêm | Xoá địa chỉ IP cho Giao diện luồng trên ngăn xếp IP của máy chủ.

kActionTypeThreadRoute

Thêm | Xoá tuyến IP trên Mô-đun luồng dành cho hỗ trợ Tuyến biên.

kActionTypeThreadRoutePriority

Thay đổi mức độ ưu tiên cho tuyến của tuyến trên mô-đun luồng.

kActionTypeThreadThreadAddress

Thêm | Xoá địa chỉ IP cho giao diện luồng trên ngăn xếp IP của mô-đun luồng.

kActionTypeTunnelHostAddress

Thêm | Xoá địa chỉ IP cho Giao diện đường hầm trên ngăn xếp IP của máy chủ.

kActionTypeTunnelHostRoute

Thêm | Xoá tuyến IP cho Giao diện đường hầm trên ngăn xếp IP của máy chủ.

kActionTypeTunnelServiceRoute

Thêm | Xoá tuyến IP 64 bit cho mạng con Dịch vụ trên ngăn xếp IP của máy chủ.

kActionTypeWiFiHostAddress

Thêm | Xoá địa chỉ IP cho Giao diện Wi-Fi trên ngăn xếp IP của máy chủ.

InitState

 InitState
Thuộc tính
kInitStateNotInitialized

Giá trị này phải bằng 0 để giá trị ban đầu của mInitState sẽ là kInitStateNotInitialized.

InterfaceState

 InterfaceState

Enum các giá trị Trạng thái giao diện có thể có.

InterfaceType

 InterfaceType

Enum các loại giao diện có thể có.

Thuộc tính
kInterfaceTypeCellular

Giao diện mạng di động.

kInterfaceTypeLegacy6LoWPAN

Giao diện chuông báo theo chuỗi.

kInterfaceTypeThread

Giao diện luồng.

kInterfaceTypeTunnel

Giao diện Đường hầm.

kInterfaceTypeWiFi

Giao diện Wi-Fi.

PlatformActionExecution

 PlatformActionExecution
Thuộc tính
kPlatformActionExecutionContinue

tiếp tục thực thi hành động.

kPlatformActionExecutionSuspendForAsynchOpCompletion

tạm ngưng quá trình thực thi hành động để hoàn tất hoạt động không đồng bộ.

PlatformResult

 PlatformResult

Enum các giá trị trả về của API nền tảng có thể có.

Thuộc tính
kPlatformResultFailure

Không thực thi được API.

kPlatformResultInProgress

Thao tác đang diễn ra và sẽ hoàn tất không đồng bộ.

kPlatformResultSuccess

API đã hoàn tất thành công.

RoutePriority

 RoutePriority

Một danh sách các mức độ ưu tiên có thể có của tuyến để một tuyến có thể được ưu tiên hơn một tuyến khác.

SystemFeatureType

 SystemFeatureType
Thuộc tính
kSystemFeatureTypeBorderRoutingEnabled

Tính năng định tuyến biên của hệ thống IS | KHÔNG được bật.

kSystemFeatureTypeCellularConnected

Giao diện di động của hệ thống LÀ | KHÔNG được kết nối.

kSystemFeatureTypeIsFabricMember

Mô-đun Weave của hệ thống IS | KHÔNG phải là thành phần của một kết cấu vải.

kSystemFeatureTypeMax

KHÔNG Vượt quá; được dành riêng để đánh dấu số bit tối đa có sẵn.

kSystemFeatureTypeThreadConnected

Giao diện luồng của hệ thống là | KHÔNG được kết nối.

kSystemFeatureTypeThreadRoutingEnabled

Tính năng định tuyến luồng của hệ thống IS | KHÔNG được bật.

kSystemFeatureTypeTunnelInterfaceEnabled

Giao diện đường hầm của hệ thống IS | KHÔNG được bật.

kSystemFeatureTypeTunnelState

Dịch vụ đường hầm của hệ thống IS | KHÔNG được thiết lập.

kSystemFeatureTypeWiFiConnected

Giao diện Wi-Fi của hệ thống IS | KHÔNG được kết nối.

Typedef

ActionFunction

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

FlagsType

uint16_t FlagsType

Biến

kGlobalULAPrefixLength

const uint8_t kGlobalULAPrefixLength = 48

kCũ6LoWPANULAAddressPrefixLength

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

Hàm

BorderRouterStateChange

void BorderRouterStateChange(
  InterfaceState inState
)

Một WARM API được gọi để thông báo về sự thay đổi Trạng thái cho tính năng Bộ định tuyến đường biên.

Thông tin chi tiết
Các tham số
[in] inState
kInterfaceStateUp nếu tính năng bộ định tuyến Border tăng, ngược lại kInterfaceStateDown.

CellularInterfaceStateChange

void CellularInterfaceStateChange(
  InterfaceState inState
)

API WARM được gọi để thông báo về sự thay đổi Trạng thái cho giao diện Mạng di động.

Thông tin chi tiết
Các tham số
[in] inState
kInterfaceStateUp nếu giao diện Mạng di động đang hoạt động, nếu không thì hãy kInterfaceStateDown.

FabricStateChange

void FabricStateChange(
  InterfaceState inState
)

Một hàm được gọi để thông báo về thay đổi Trạng thái cho tính năng Weave Fabric.

Thông tin chi tiết
Các tham số
[in] inState
kInterfaceStateUp nếu hệ thống là một thành phần của vải Weave, nếu không thì kInterfaceStateDown.

GetCurrentActionState

bool GetCurrentActionState(
  ActionType inAction
)

Một hàm tĩnh trả về Trạng thái hiện tại của một thao tác đã chỉ định.

Thông tin chi tiết
Các tham số
[in] inAction
Loại thao tác để truy vấn.
Trả về
true nếu thao tác được Đặt, nếu không thì là false.

GetFabricState

WEAVE_ERROR GetFabricState(
  const WeaveFabricState *& outFabricState
)

API WARM để lấy đối tượng FabricState đã được cung cấp cho Warm trong Init.

Thông tin chi tiết
Các tham số
[out] outFabricState
Tham chiếu đến con trỏ đến đối tượng materialState.
Giá trị trả về
WEAVE_NO_ERROR
Khi thành công.
WEAVE_ERROR_INCORRECT_STATE
Nếu API này được gọi trước khi khởi chạy WARM.

GetSystemFeatureState

bool GetSystemFeatureState(
  SystemFeatureType inSystemFeature
)

Một hàm tĩnh nhận Trạng thái hiện tại của một tính năng trong Hệ thống.

Thông tin chi tiết
Các tham số
[in] inSystemFeature
Tính năng hệ thống để truy vấn.
Trả về
true nếu Tính năng hệ thống được bật, false nếu không bật.

GetULA

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

WARM API để lấy ULA cho một loại giao diện đã chỉ định.

Thông tin chi tiết
Các tham số
[in] inInterfaceType
Loại giao diện mà ULA mong muốn.
[out] outAddress
Một đối tượng địa chỉ dùng để lưu giữ ULA thu được.
Giá trị trả về
WEAVE_NO_ERROR
Khi thành công.
WEAVE_ERROR_INCORRECT_STATE
Nếu API này được gọi trong khi WARM không phải là thành phần của Fabric.
WEAVE_ERROR_INVALID_ARGUMENT
Nếu API này được gọi bằng Loại giao diện không hợp lệ.

Bắt đầu

WEAVE_ERROR Init(
  WeaveFabricState & inFabricState
)

API WARM để thực hiện khởi chạy mô-đun một lần.

Thông tin chi tiết
Các tham số
[in] inFabricState
Tham chiếu đến một WeaveFabricState hợp lệ.
Giá trị trả về
WEAVE_NO_ERROR
Khi khởi chạy thành công.
WEAVE_ERROR_INCORRECT_STATE
Khi Init được gọi nhiều lần.
other
Nếu không, hãy nhập mã lỗi.
Trả về
WEAVE_NO_ERROR khi thành công, nếu không thì sẽ là mã lỗi.

InvokeActions

void InvokeActions(
  void
)

API WARM do một tác vụ chuyên biệt gọi để thực hiện nhiều thao tác liên quan đến API nền tảng.

Đây là điểm truy cập để thực hiện các hành động cần thiết đáp ứng Trạng thái hệ thống hiện tại. Ví dụ: nếu ngăn xếp Luồng chuyển đổi từ tắt sang bật, thì hàm này sẽ thực hiện các lệnh gọi nền tảng cần thiết để chỉ định địa chỉ lưu trữ luồng, v.v. Hàm này chỉ được gọi bằng mã nền tảng để phản hồi lệnh gọi Warm đến RequestInvokeActions. Việc gọi InvokeActions sẽ dẫn đến một hoặc nhiều lệnh gọi tới API nl::Warm::Platform. Do đó, nhà phát triển nên triển khai RequestInvokeActions và phương thức gọi InvokeActions() một cách thích hợp. Ví dụ: bạn có thể đăng sự kiện lên tác vụ sẽ gọi InvokeActions(). Ngược lại, nếu hệ thống là một luồng đơn thì bạn có thể triển khai RequestInvokeActions để gọi trực tiếp InvokeActions().

LegacyHostAddressAction

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

Một trong các phương thức Hành động.

Đặt Địa chỉ máy chủ cho giao diện cũ.

Thông tin chi tiết
Các tham số
[in] inAction
Loại hành động.
[in] inActivate
Trạng thái mong muốn đúng == kích hoạt, false == huỷ kích hoạt.
[in] inGlobalId
Tham chiếu đến mã nhận dạng chung của Weave nếu cần thiết để tính toán địa chỉ.
[in] inInterfaceId
Mã tham chiếu đến mã giao diện của thiết bị nếu cần thiết để tính toán địa chỉ.
Trả về
Chuyển tiếp kết quả từ Platform::HostAddress().

LegacyThreadAddressAction

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

Một trong các phương thức Hành động.

Đặt địa chỉ luồng cho giao diện 6LoWPAN cũ.

Thông tin chi tiết
Các tham số
[in] inAction
Loại hành động.
[in] inActivate
Trạng thái mong muốn đúng == kích hoạt, false == huỷ kích hoạt.
[in] inGlobalId
Tham chiếu đến mã nhận dạng chung của Weave nếu cần thiết để tính toán địa chỉ.
[in] inInterfaceId
Mã tham chiếu đến mã giao diện của thiết bị nếu cần thiết để tính toán địa chỉ.
Trả về
Chuyển tiếp kết quả từ Platform::ThreadAddress().

MakePrefix

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

Tiện ích để tạo tiền tố 48 bit từ GlobalID.

Thông tin chi tiết
Các tham số
[in] inGlobalID
Mã tham chiếu đến mã nhận dạng chung của Weave.
[out] outPrefix
Tiền tố để khởi chạy.

MapAvailabilityToPriority

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

Một hàm tĩnh trả về một mục ánh xạ từ TunnelAvailability đến tuyếnPriority.

Thông tin chi tiết
Các tham số
[in] inAvailability
Chế độ sẵn có của đường hầm Weave.
Trả về
Giá trị mức độ ưu tiên được liên kết.

RecordPlatformResult

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

Một hàm tĩnh ghi lại kết quả của lệnh gọi Hành động API của nền tảng.

Mô-đun này đưa ra các yêu cầu thực hiện hành động thông qua API dành riêng cho nền tảng. API này bắt buộc phải báo cáo kết quả kPlatformResultSuccess|kPlatformResultFailure|kPlatformResultInProgress của yêu cầu hành động đó. Hàm này ghi lại kết quả và trả về giá trị true nếu kết quả đang diễn ra và các hành động khác sẽ bị trì hoãn.

Thông tin chi tiết
Các tham số
[in] inResult
Kết quả về API nền tảng.
[in] inAction
Hành động mà API nền tảng đã cố gắng thực hiện.
[in] inActionState
Trạng thái mới của hành động nếu kết quả thành công.
Trả về
Giá trị true (đúng) của nền tảng API sẽ xử lý yêu cầu không đồng bộ, nếu không thì là false.

ReportActionComplete

void ReportActionComplete(
  PlatformResult inResult
)

API WARM được gọi để thông báo việc hoàn tất một lệnh gọi API nền tảng không đồng bộ trước đó.

Hệ thống giả định rằng API thao tác trên nền tảng có thể cần thực hiện các hoạt động không đồng bộ. Nếu điều này đúng thì API nền tảng sẽ trả về kPlatformResultInProgress. Khi điều này xảy ra, các Hành động định tuyến và Địa chỉ mới sẽ bị tạm ngưng cho đến khi hệ thống gọi ReportActionComplete để thông báo hoàn tất hoạt động.

Thông tin chi tiết
Các tham số
[in] inResult
Kết quả của hành động đang chờ xử lý phải là một trong: {kPlatformResultSuccess | kPlatformResultFailure}

SetCurrentActionState

void SetCurrentActionState(
  ActionType inAction,
  bool inValue
)

Một hàm tĩnh đặt Trạng thái hiện tại của một thao tác được chỉ định.

Thông tin chi tiết
Các tham số
[in] inAction
Loại thao tác cần thay đổi.
[in] inValue
Giá trị Trạng thái mới để áp dụng.

SetSystemFeatureState

bool SetSystemFeatureState(
  SystemFeatureType inSystemFeature,
  bool inValue
)

Một hàm tĩnh đặt trạng thái hiện tại của Tính năng hệ thống.

Thông tin chi tiết
Các tham số
[in] inSystemFeature
SystemFeature cần đặt.
[in] inValue
Giá trị Trạng thái mới để áp dụng.
Trả về
true nếu Tính năng hệ thống đã bị thay đổi, false nếu không thay đổi.

ShouldPerformAction

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

Một hàm tĩnh xác định xem có nên thực hiện hành động được chỉ định hay không.

Hàm này kiểm tra điều kiện của cờ Trạng thái tính năng của hệ thống và xác định xem nên bật hay tắt thao tác đã chỉ định. Sau đó, hàm này sẽ kiểm tra trạng thái hiện tại của thao tác và nếu thao tác không được đặt thành giá trị theo yêu cầu của Trạng thái tính năng hệ thống, thì hàm sẽ trả về giá trị true cùng với trạng thái thao tác mong muốn trong outKích hoạt

Thông tin chi tiết
Các tham số
[in] inAction
Hành động cần truy vấn.
[in] inNecessarySystemFeatureState
Các cờ trạng thái cần thiết để hành động hoạt động.
[out] outActivate
Trạng thái mong muốn của thao tác.
Trả về
true nếu thao tác hiện không ở trạng thái mong muốn, nếu không thì là false.

SystemFeatureStateChangeHandler

void SystemFeatureStateChangeHandler(
  SystemFeatureType inSystemFeatureType,
  bool inState
)

Một hàm tĩnh đặt trạng thái Tính năng hệ thống và thông báo cho nền tảng rằng trạng thái sự kiện đã thay đổi.

Được API EventStateChange gọi để thực hiện các thao tác phản ứng cần thiết.

Thông tin chi tiết
Các tham số
[in] inSystemFeatureType
Trạng thái đã thay đổi tương ứng với API được gọi.
[in] inState
Giá trị mới của trạng thái.

TakeActions

void TakeActions(
  void
)

Một hàm tĩnh kiểm tra Trạng thái của mỗi hành động và thực hiện lệnh gọi API nền tảng để thay đổi Trạng thái của hành động nếu cần.

Hàm này sử dụng shouldPerformAction() để xác định xem có cần thay đổi/thực hiện một trạng thái hành động hay không. Nếu shouldPerformAction() trả về true, hàm sẽ gọi API hành động thích hợp để thực hiện hành động nhằm đặt nó ở Trạng thái mong muốn. Kết quả của lệnh gọi API hành động được chuyển vào RecordPlatformResult() và nếu hàm đó trả về giá trị true thì quá trình thực thi hàm này sẽ bị chấm dứt.

ThreadAdvertisementAction

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

Một trong các phương thức Hành động.

Đặt trạng thái quảng cáo luồng

Thông tin chi tiết
Các tham số
[in] inAction
Loại hành động.
[in] inActivate
Trạng thái mong muốn đúng == kích hoạt, false == huỷ kích hoạt.
[in] inGlobalId
Tham chiếu đến mã nhận dạng chung của Weave nếu cần thiết để tính toán địa chỉ.
[in] inInterfaceId
Mã tham chiếu đến mã giao diện của thiết bị nếu cần thiết để tính toán địa chỉ.
Trả về
Chuyển tiếp kết quả từ Platform::ThreadQuảng cáo().

ThreadHostAddressAction

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

Một trong các phương thức Hành động.

Đặt Địa chỉ máy chủ cho giao diện chuỗi.

Thông tin chi tiết
Các tham số
[in] inAction
Loại hành động.
[in] inActivate
Trạng thái mong muốn đúng == kích hoạt, false == huỷ kích hoạt.
[in] inGlobalId
Tham chiếu đến mã nhận dạng chung của Weave nếu cần thiết để tính toán địa chỉ.
[in] inInterfaceId
Mã tham chiếu đến mã giao diện của thiết bị nếu cần thiết để tính toán địa chỉ.
Trả về
Chuyển tiếp kết quả từ Platform::HostAddress().

ThreadHostRouteAction

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

Một trong các phương thức Hành động.

Thiết lập Tuyến máy chủ lưu trữ cho Giao diện luồng.

Thông tin chi tiết
Các tham số
[in] inAction
Loại hành động.
[in] inActivate
Trạng thái mong muốn đúng == kích hoạt, false == huỷ kích hoạt.
[in] inGlobalId
Tham chiếu đến mã nhận dạng chung của Weave nếu cần thiết để tính toán địa chỉ.
[in] inInterfaceId
Mã tham chiếu đến mã giao diện của thiết bị nếu cần thiết để tính toán địa chỉ.
Trả về
Chuyển tiếp kết quả từ Platform::HostRoute().

ThreadInterfaceStateChange

void ThreadInterfaceStateChange(
  InterfaceState inState
)

API WARM được gọi để thông báo về thay đổi Trạng thái cho giao diện Luồng.

Thông tin chi tiết
Các tham số
[in] inState
kInterfaceStateUp nếu giao diện Luồng hoạt động, nếu không thì kInterfaceStateDown.

ThreadRoutePriorityAction

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

Một trong các phương thức Hành động.

Đặt mức độ ưu tiên của tuyến luồng dựa trên khả năng sử dụng của đường hầm.

Thông tin chi tiết
Các tham số
[in] inAction
Loại hành động.
[in] inActivate
Trạng thái mong muốn đúng == kích hoạt, false == huỷ kích hoạt.
[in] inGlobalId
Tham chiếu đến mã nhận dạng chung của Weave nếu cần thiết để tính toán địa chỉ.
[in] inInterfaceId
Mã tham chiếu đến mã giao diện của thiết bị nếu cần thiết để tính toán địa chỉ.
Trả về
Chuyển tiếp kết quả từ Platform::ThreadRoutePriority().

ThreadRoutingStateChange

void ThreadRoutingStateChange(
  InterfaceState inState
)

API WARM được gọi để thông báo về thay đổi Trạng thái cho tính năng Định tuyến luồng.

Thông tin chi tiết
Các tham số
[in] inState
kInterfaceStateUp nếu tính năng định tuyến luồng hoạt động, nếu không, hãy kInterfaceStateDown.

ThreadThreadAddressAction

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

Một trong các phương thức Hành động.

Đặt địa chỉ luồng cho giao diện luồng.

Thông tin chi tiết
Các tham số
[in] inAction
Loại hành động.
[in] inActivate
Trạng thái mong muốn đúng == kích hoạt, false == huỷ kích hoạt.
[in] inGlobalId
Tham chiếu đến mã nhận dạng chung của Weave nếu cần thiết để tính toán địa chỉ.
[in] inInterfaceId
Mã tham chiếu đến mã giao diện của thiết bị nếu cần thiết để tính toán địa chỉ.
Trả về
Chuyển tiếp kết quả từ Platform::ThreadAddress().

ThreadThreadRouteAction

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

Một trong các phương thức Hành động.

Thiết lập tuyến luồng cho ngăn xếp luồng.

Thông tin chi tiết
Các tham số
[in] inAction
Loại hành động.
[in] inActivate
Trạng thái mong muốn đúng == kích hoạt, false == huỷ kích hoạt.
[in] inGlobalId
Tham chiếu đến mã nhận dạng chung của Weave nếu cần thiết để tính toán địa chỉ.
[in] inInterfaceId
Mã tham chiếu đến mã giao diện của thiết bị nếu cần thiết để tính toán địa chỉ.
Trả về
Chuyển tiếp kết quả từ Platform::ThreadRoute().

TunnelHostAddressAction

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

Một trong các phương thức Hành động.

Đặt HostAddress cho Giao diện đường hầm.

Thông tin chi tiết
Các tham số
[in] inAction
Loại hành động.
[in] inActivate
Trạng thái mong muốn đúng == kích hoạt, false == huỷ kích hoạt.
[in] inGlobalId
Tham chiếu đến mã nhận dạng chung của Weave nếu cần thiết để tính toán địa chỉ.
[in] inInterfaceId
Mã tham chiếu đến mã giao diện của thiết bị nếu cần thiết để tính toán địa chỉ.
Trả về
Chuyển tiếp kết quả từ Platform::HostAddress().

TunnelHostRouteAction

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

Một trong các phương thức Hành động.

Đặt HostRoute cho Giao diện Đường hầm.

Thông tin chi tiết
Các tham số
[in] inAction
Loại hành động.
[in] inActivate
Trạng thái mong muốn đúng == kích hoạt, false == huỷ kích hoạt.
[in] inGlobalId
Tham chiếu đến mã nhận dạng chung của Weave nếu cần thiết để tính toán địa chỉ.
[in] inInterfaceId
Mã tham chiếu đến mã giao diện của thiết bị nếu cần thiết để tính toán địa chỉ.
Trả về
Chuyển tiếp kết quả từ Platform::HostRoute().

TunnelInterfaceStateChange

void TunnelInterfaceStateChange(
  InterfaceState inState
)

Một WARM API được gọi để thông báo về thay đổi Trạng thái cho giao diện Weave Tunnel.

Thông tin chi tiết
Các tham số
[in] inState
kInterfaceStateUp nếu giao diện Đường hầm Weave bật, nếu không thì hãy kInterfaceStateDown.

TunnelPriorityStateChange

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

Một WARM API được gọi để cập nhật mức độ ưu tiên của Dịch vụ đường hầm.

Thông tin chi tiết
Các tham số
[in] inAvailability
Giá trị mới cho trạng thái sẵn có của đường hầm.

TunnelServiceStateChange

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

Một WARM API được gọi để thông báo về thay đổi Trạng thái cho giao diện Weave Tunnel.

Thông tin chi tiết
Các tham số
[in] inState
kInterfaceStateUp nếu Dịch vụ đường hầm Weave được thiết lập, nếu không, hãy kInterfaceStateDown.
[in] inAvailability
Trạng thái sẵn có để định cấu hình đường hầm sau này.

WiFiHostAddressAction

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

Một trong các phương thức Hành động.

Đặt Địa chỉ máy chủ cho giao diện Wi-Fi.

Thông tin chi tiết
Các tham số
[in] inAction
Loại hành động.
[in] inActivate
Trạng thái mong muốn đúng == kích hoạt, false == huỷ kích hoạt.
[in] inGlobalId
Tham chiếu đến mã nhận dạng chung của Weave nếu cần thiết để tính toán địa chỉ.
[in] inInterfaceId
Mã tham chiếu đến mã giao diện của thiết bị nếu cần thiết để tính toán địa chỉ.
Trả về
Chuyển tiếp kết quả từ Platform::HostAddress().

WiFiInterfaceStateChange

void WiFiInterfaceStateChange(
  InterfaceState inState
)

Một WARM API được gọi để thông báo về sự thay đổi Trạng thái cho giao diện Wi-Fi.

Thông tin chi tiết
Các tham số
[in] inState
kInterfaceStateUp nếu giao diện Wi-Fi bật, nếu không thì hãy kInterfaceStateDown.