nl::Weave::System

摘要

列舉

@18{
  kTimerFactor_micro_per_milli = 1000,
  kTimerFactor_milli_per_unit = 1000,
  kTimerFactor_nano_per_milli = 1000000,
  kTimerFactor_micro_per_unit = 1000000
}
列舉
@19{
  kEvent_ReleaseObj = _WEAVE_SYSTEM_CONFIG_LWIP_EVENT(0),
  kEvent_ScheduleWork = _WEAVE_SYSTEM_CONFIG_LWIP_EVENT(1)
}
列舉
Inet 圖層事件類型定義。
LayerState{
  kLayerState_NotInitialized = 0,
  kLayerState_Initialized = 1
}
列舉
圖層物件的狀態。

Typedefs

Event nl::Weave::System::Event
所有 InetLayer 事件的基本物件。
EventType nl::Weave::System::EventType
所有 InetLayer 事件的基本類型。
LwIPEventHandlerFunction)(Object &aTarget, EventType aEventType, uintptr_t aArgument) typedef
Error(*

函式

DescribeErrorLwIP(Error aError)
NL_DLL_EXPORT const char *
這會實作函式,以傳回以 NULL 結尾的 LwIP 專用描述性 C 字串,與指定的對應 LwIP 錯誤相關聯。
DescribeErrorPOSIX(Error aError)
NL_DLL_EXPORT const char *
此函式會實作函式,以傳回與指定對應的 OS 錯誤相關聯的 NULL 終止 OS 專用描述性 C 字串。
FormatLwIPError(char *buf, uint16_t bufSize, int32_t err)
bool
如果出現 LwIP 錯誤,系統會傳回使用者可理解的 NULL 結尾的 C 字串,說明錯誤。
FormatPOSIXError(char *buf, uint16_t bufSize, int32_t err)
bool
發生 POSIX 錯誤時,會傳回使用者可理解的 NULL 結尾的 C 字串,用於說明錯誤。
FormatSystemLayerError(char *buf, uint16_t bufSize, int32_t err)
bool
如果發生系統圖層錯誤,會傳回使用者可理解的 NULL 結尾的 C 字串,說明錯誤。
IsErrorLwIP(Error aError)
NL_DLL_EXPORT bool
這會針對 Weave 系統 Layer 錯誤實作自我檢查函式,讓呼叫端判斷指定的錯誤是否為內部基礎 LwIP 錯誤。
IsErrorPOSIX(Error aError)
NL_DLL_EXPORT bool
這會針對 Weave 系統 Layer 錯誤實作自我檢查函式,讓呼叫端判斷指定的錯誤是否為內部基礎 OS 錯誤。
IsEventOfType(EventType aType)
bool
請確認 EventType 是有效的類型。
MapErrorLwIP(err_t aError)
NL_DLL_EXPORT Error
這會為 Weave 系統 Layer 錯誤實作對應函式,將基礎 LwIP 網路堆疊錯誤對應至特定平台或系統專屬範圍。
MapErrorPOSIX(int aError)
NL_DLL_EXPORT Error
這會為 Weave System Layer 錯誤實作對應函式,允許將基礎 POSIX 網路和 OS 堆疊錯誤數量空間中的整數對應至平台或系統專屬範圍。
RegisterLwIPErrorFormatter(void)
void
註冊 LwIP 錯誤的文字錯誤格式設定工具。
RegisterPOSIXErrorFormatter(void)
void
註冊 POSIX 錯誤的文字錯誤格式設定工具。
RegisterSystemLayerErrorFormatter(void)
void
註冊系統「Layer」錯誤的文字錯誤格式設定工具。

類別

nl::Weave::System::Layer

This provides access to timers according to the configured event handling model.

nl::Weave::System::LwIPEventHandlerDelegate
nl::Weave::System::Mutex

This class represents a simple mutual exclusion lock used on platforms with preemptively scheduled multi-threaded
programming environments, for example, POSIX threads and FreeRTOS.

nl::Weave::System::Object

代表從 ObjectPool<t, n=""> 物件中包含的空間,分配的參考計數物件。</t,>

nl::Weave::System::PacketBuffer

封包緩衝區類別是用於操控八位元序列化資料的封包的核心結構,通常位於資料通訊網路 (例如藍牙或網際網路通訊協定) 內。

nl::Weave::System::Timer

這是 Weave 系統 Layer 的內部類別,用於代表正在進行的一次性計時器。

結構

nl::Weave::System::LwIPEvent

工會

nl::Weave::System::ObjectArena

A union template used for representing a well-aligned block of memory.

命名空間

nl::Weave::System::Platform
nl::Weave::System::Stats

列舉

@18

 @18
屬性
kTimerFactor_micro_per_milli

以微秒為單位的奈秒數量。

kTimerFactor_micro_per_unit

毫秒的奈秒。

kTimerFactor_milli_per_unit

毫秒數。

kTimerFactor_nano_per_milli

每秒毫秒數。

@19

 @19

Inet 圖層事件類型定義。

屬性
kEvent_ReleaseObj

放置 SystemLayer 物件的事件。

kEvent_ScheduleWork

在系統「圖層」執行緒上排定工作的事件。

LayerState

 LayerState

圖層物件的狀態。

屬性
kLayerState_Initialized

初始化狀態。

kLayerState_NotInitialized

未初始化狀態。

Typedefs

活動

WEAVE_SYSTEM_CONFIG_LWIP_EVENT_OBJECT_TYPE Event

所有 InetLayer 事件的基本物件。

定義為平台或系統專屬類型。

EventType

WEAVE_SYSTEM_CONFIG_LWIP_EVENT_TYPE EventType

所有 InetLayer 事件的基本類型。

定義為平台或系統專屬類型。

LwIPEventHandlerFunction

Error(* LwIPEventHandlerFunction)(Object &aTarget, EventType aEventType, uintptr_t aArgument)

函式

DescribeErrorLwIP

NL_DLL_EXPORT const char * DescribeErrorLwIP(
  Error aError
)

這會實作函式,以傳回以 NULL 結尾的 LwIP 專用描述性 C 字串,與指定的對應 LwIP 錯誤相關聯。

詳細說明
參數
[in] err
要描述的對應 LwIP 特定錯誤。
傳回
以 NULL 結尾的 LwIP 專用描述性 C 字串,用於說明錯誤。

DescribeErrorPOSIX

NL_DLL_EXPORT const char * DescribeErrorPOSIX(
  Error aError
)

此函式會實作函式,以傳回與指定對應的 OS 錯誤相關聯的 NULL 終止 OS 專用描述性 C 字串。

詳細說明
參數
[in] err
要描述的對應 OS 特定錯誤。
傳回
以 NULL 結尾的 OS 特定描述性 C 字串,用於說明錯誤。

FormatLwIPError

bool FormatLwIPError(
  char *buf,
  uint16_t bufSize,
  int32_t err
)

如果出現 LwIP 錯誤,系統會傳回使用者可理解的 NULL 結尾的 C 字串,說明錯誤。

詳細說明
參數
[in] buf
出現錯誤字串的緩衝區。
[in] bufSize
提供的緩衝區大小 (以位元組為單位)。
[in] err
要說明的錯誤。
傳回
如果說明字串寫入提供的緩衝區,則傳回 true。
傳回
如果提供的錯誤不是 LwIP 錯誤,則為 false。

FormatPOSIXError

bool FormatPOSIXError(
  char *buf,
  uint16_t bufSize,
  int32_t err
)

發生 POSIX 錯誤時,會傳回使用者可理解的 NULL 結尾的 C 字串,用於說明錯誤。

詳細說明
參數
[in] buf
出現錯誤字串的緩衝區。
[in] bufSize
提供的緩衝區大小 (以位元組為單位)。
[in] err
要說明的錯誤。
傳回
如果說明字串寫入提供的緩衝區,則傳回 true。
傳回
如果提供的錯誤不是 POSIX 錯誤,則為 false。

FormatSystemLayerError

bool FormatSystemLayerError(
  char *buf,
  uint16_t bufSize,
  int32_t err
)

如果發生系統圖層錯誤,會傳回使用者可理解的 NULL 結尾的 C 字串,說明錯誤。

詳細說明
參數
[in] buf
出現錯誤字串的緩衝區。
[in] bufSize
提供的緩衝區大小 (以位元組為單位)。
[in] err
要說明的錯誤。
傳回
如果說明字串寫入提供的緩衝區,則傳回 true。
傳回
如果提供的錯誤不是系統圖層錯誤,則為 false。

IsErrorLwIP

NL_DLL_EXPORT bool IsErrorLwIP(
  Error aError
)

這會針對 Weave 系統 Layer 錯誤實作自我檢查函式,讓呼叫端判斷指定的錯誤是否為內部基礎 LwIP 錯誤。

詳細說明
參數
[in] err
對應的錯誤以判斷是否為 LwIP 錯誤。
傳回
如果指定的錯誤為 LwIP 錯誤,則為「是」;否則傳回「否」。

IsErrorPOSIX

NL_DLL_EXPORT bool IsErrorPOSIX(
  Error aError
)

這會針對 Weave 系統 Layer 錯誤實作自我檢查函式,讓呼叫端判斷指定的錯誤是否為內部基礎 OS 錯誤。

詳細說明
參數
[in] err
對應的錯誤,以判斷是否為 OS 錯誤。
傳回
如果指定的錯誤為 OS 錯誤,則為「是」;否則傳回「否」。

IsEventOfType

bool IsEventOfType(
  EventType aType
)

請確認 EventType 是有效的類型。

詳細說明
參數
[in] aEventType
系統「圖層」事件類型
傳回
如果位於列舉範圍內,則傳回 true,否則傳回 false。

MapErrorLwIP

NL_DLL_EXPORT Error MapErrorLwIP(
  err_t aError
)

這會為 Weave 系統 Layer 錯誤實作對應函式,將基礎 LwIP 網路堆疊錯誤對應至特定平台或系統專屬範圍。

詳細說明
參數
[in] e
要對應的 LwIP 錯誤。
傳回
對應的 LwIP 網路或 OS 錯誤。

MapErrorPOSIX

NL_DLL_EXPORT Error MapErrorPOSIX(
  int aError
)

這會為 Weave System Layer 錯誤實作對應函式,允許將基礎 POSIX 網路和 OS 堆疊錯誤數量空間中的整數對應至平台或系統專屬範圍。

除了 POSIX 或 ISO C/C++ 標準目前定義的錯誤代碼以外,這裡的錯誤代碼會與標準代碼類似。

詳細說明
參數
[in] e
要對應的 POSIX 網路或 OS 錯誤。
傳回
對應的 POSIX 網路或 OS 錯誤。

RegisterLwIPErrorFormatter

void RegisterLwIPErrorFormatter(
  void
)

註冊 LwIP 錯誤的文字錯誤格式設定工具。

RegisterPOSIXErrorFormatter

void RegisterPOSIXErrorFormatter(
  void
)

註冊 POSIX 錯誤的文字錯誤格式設定工具。

RegisterSystemLayerErrorFormatter

void RegisterSystemLayerErrorFormatter(
  void
)

註冊系統「Layer」錯誤的文字錯誤格式設定工具。