nl::Weave::الدافئ

تشمل مساحة الاسم هذه واجهات لكل من Weave Address ووحدة التوجيه، وهي وحدة محمولة لضبط عناوين IP Weave والمسارات.

الملخّص

تعداد

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)
}
تعداد
InitState{
  kInitStateNotInitialized = 0
}
تعداد
InterfaceState تعداد
تعداد القيم المحتملة لحالة الواجهة.
InterfaceType{
  kInterfaceTypeLegacy6LoWPAN = 0,
  kInterfaceTypeThread,
  kInterfaceTypeWiFi,
  kInterfaceTypeTunnel,
  kInterfaceTypeCellular
}
تعداد
تعداد لأنواع الواجهة المحتملة.
PlatformActionExecution{
  kPlatformActionExecutionContinue = false,
  kPlatformActionExecutionSuspendForAsynchOpCompletion = true
}
تعداد
PlatformResult{
  kPlatformResultSuccess = 0,
  kPlatformResultFailure,
  kPlatformResultInProgress
}
تعداد
عدد من قيم إرجاع واجهة برمجة التطبيقات المحتملة.
RoutePriority تعداد
تعداد أولويات محتملة للمسار بحيث يمكن إعطاء أحد المسارين الأولوية على طريق آخر.
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)
}
تعداد

رفوف النوع

ActionFunction)(ActionType inAction, bool inActivate, const uint64_t &inGlobalId, const uint64_t &inInterfaceId) typedef
FlagsType typedef
uint16_t

المتغيّرات

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

الدوال

BorderRouterStateChange(InterfaceState inState)
void
تم الاتصال بواجهة برمجة تطبيقات WARM للإعلان عن تغيير في الولاية لميزة جهاز توجيه الحدود.
CellularInterfaceStateChange(InterfaceState inState)
void
تم الاتصال بواجهة برمجة تطبيقات WARM للإعلان عن تغيير في الحالة لواجهة شبكة الجوّال.
FabricStateChange(InterfaceState inState)
void
وظيفة أعلنت عن تغيير في حالة ميزة النسيج المنسوج.
GetCurrentActionState(ActionType inAction)
bool
دالة ثابتة تعرض الحالة الحالية لإجراء محدّد.
GetFabricState(const WeaveFabricState *& outFabricState)
واجهة برمجة تطبيقات WARM للحصول على الكائن FabricState الذي تم تقديمه إلى Warm أثناء Init.
GetSystemFeatureState(SystemFeatureType inSystemFeature)
bool
دالة ثابتة تحصل على الحالة لإحدى ميزات النظام.
GetULA(InterfaceType inInterfaceType, Inet::IPAddress & outAddress)
واجهة برمجة تطبيقات WARM لاكتساب ULA لنوع واجهة محدد.
Init(WeaveFabricState & inFabricState)
واجهة برمجة تطبيقات WARM لإجراء إعداد وحدة زمنية لمرة واحدة.
InvokeActions(void)
void
واجهة برمجة تطبيقات WARM تم طلبها بواسطة مهمة مُخصَّصة لتنفيذ إجراءات متنوعة لواجهة برمجة تطبيقات النظام الأساسي.
LegacyHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
إحدى طرق التنفيذ.
LegacyThreadAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
إحدى طرق التنفيذ.
MakePrefix(const uint64_t & inGlobalID, const uint16_t subnetId, const uint8_t inPrefixLen, Inet::IPPrefix & outPrefix)
void
أداة لإنشاء بادئة 48 بت من GlobalID.
MapAvailabilityToPriority(Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
دالة ثابتة تعرِض عملية ربط من TunnelAvailability إلى RoutePriority.
RecordPlatformResult(PlatformResult inResult, ActionType inAction, bool inActionState)
دالة ثابتة تسجّل نتيجة استدعاء إجراء واجهة برمجة التطبيقات للنظام الأساسي.
ReportActionComplete(PlatformResult inResult)
void
تم طلب واجهة برمجة تطبيقات WARM للإعلان عن اكتمال طلب سابق لواجهة برمجة تطبيقات غير متزامن للنظام الأساسي.
SetCurrentActionState(ActionType inAction, bool inValue)
void
دالة ثابتة تعمل على ضبط الحالة الحالية لإجراء محدد.
SetSystemFeatureState(SystemFeatureType inSystemFeature, bool inValue)
bool
دالة ثابتة تعمل على ضبط الحالة الحالية لميزة النظام.
ShouldPerformAction(ActionType inAction, FlagsType inNecessarySystemFeatureState, bool & outActivate)
bool
دالة ثابتة تحدد ما إذا كان يجب تنفيذ الإجراء المحدد أم لا.
SystemFeatureStateChangeHandler(SystemFeatureType inSystemFeatureType, bool inState)
void
دالة ثابتة تعمل على ضبط حالة ميزة النظام وإبلاغ النظام الأساسي بأن حالة الحدث قد طرأ عليها تغيير.
TakeActions(void)
void
دالة ثابتة تعمل على اختبار حالة كل إجراء وإجراء طلب بيانات من واجهة برمجة التطبيقات للنظام الأساسي لتغيير حالة الإجراء إذا لزم الأمر.
ThreadAdvertisementAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
إحدى طرق التنفيذ.
ThreadHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
إحدى طرق التنفيذ.
ThreadHostRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
إحدى طرق التنفيذ.
ThreadInterfaceStateChange(InterfaceState inState)
void
تم طلب واجهة برمجة تطبيقات WARM للإعلان عن تغيير في الحالة لواجهة Thread.
ThreadRoutePriorityAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
إحدى طرق التنفيذ.
ThreadRoutingStateChange(InterfaceState inState)
void
تم الاتصال بواجهة برمجة تطبيقات WARM للإعلان عن تغيير في حالة ميزة "توجيه سلسلة المحادثات".
ThreadThreadAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
إحدى طرق التنفيذ.
ThreadThreadRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
إحدى طرق التنفيذ.
TunnelHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
إحدى طرق التنفيذ.
TunnelHostRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
إحدى طرق التنفيذ.
TunnelInterfaceStateChange(InterfaceState inState)
void
تم الاتصال بواجهة برمجة تطبيقات WARM للإعلان عن تغيير في الولاية لواجهة نفق Weave.
TunnelPriorityStateChange(nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
void
تم طلب واجهة برمجة تطبيقات WARM لتحديث أولوية خدمة النفق.
TunnelServiceStateChange(InterfaceState inState, nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
void
تم الاتصال بواجهة برمجة تطبيقات WARM للإعلان عن تغيير في الولاية لواجهة نفق Weave.
WiFiHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
إحدى طرق التنفيذ.
WiFiInterfaceStateChange(InterfaceState inState)
void
تم طلب واجهة برمجة تطبيقات WARM للإعلان عن تغيير في الولاية لواجهة WiFi.

صفوف

nl::Weave::Warm::WarmFabricStateDelegate

هذا صف داخلي إلى الدوارة.

الهياكل

nl::Weave::Warm::ActionAction
nl::Weave::Warm::ModuleState

مساحات الأسماء

nl::Weave::Warm::النظام الأساسي

تعداد

نوع الإجراء

 ActionType
أماكن إقامة
kActionTypeHostRouteThread

إضافة | إزالة مسار IP لواجهة سلسلة المحادثات على حزمة عنوان IP للمضيف ('s).

kActionTypeLegacy6LoWPANHostAddress

إضافة | إزالة عنوان IP لواجهة 6LOWPAN القديمة على مضيف IP's.

kActionTypeLegacy6LoWPANThreadAddress

إضافة | إزالة عنوان IP لواجهة 6LOWPAN القديمة على حزمة IP Unit Module's.

kActionTypeMax

لا تتجاوز؛ محجوزة لوضع علامة على الحد الأقصى المتاح لوحدات البت.

kActionTypeThreadAdvertisement

ابدأ | أوقِف إعلان المسار باستخدام وحدة "سلسلة المحادثات".

kActionTypeThreadHostAddress

إضافة | إزالة عنوان IP لواجهة سلسلة المحادثات على حزمة IP للمضيف ('s).

kActionTypeThreadRoute

إضافة | إزالة مسار IP من وحدة سلسلة التعليمات لدعم مسار الحدود

kActionTypeThreadRoutePriority

غيِّر أولوية المسار لمسار سلسلة المحادثات في وحدة سلسلة المحادثات.

kActionTypeThreadThreadAddress

إضافة | إزالة عنوان IP لواجهة سلسلة المحادثات على حزمة عناوين IP لـ Thread&#89.

kActionTypeTunnelHostAddress

إضافة | إزالة عنوان IP لواجهة النفق في حزمة IP للمضيف.

kActionTypeTunnelHostRoute

إضافة | إزالة مسار IP لواجهة النفق في حزمة IP للمضيف.

kActionTypeTunnelServiceRoute

إضافة | إزالة مسار IP 64 بت للشبكة الفرعية للخدمة في مضيف IP's.

kActionTypeWiFiHostAddress

إضافة | إزالة عنوان IP لواجهة WiFi على حزمة IP للمضيف ('s).

InitState

 InitState
أماكن إقامة
kInitStateNotInitialized

يجب أن تكون 0 حتى تكون قيمة mInitState' الأولية هي kInitStateNotInitialize.

حالة الواجهة

 InterfaceState

تعداد القيم المحتملة لحالة الواجهة.

نوع الواجهة

 InterfaceType

تعداد لأنواع الواجهة المحتملة.

أماكن إقامة
kInterfaceTypeCellular

واجهة شبكة الجوّال.

kInterfaceTypeLegacy6LoWPAN

واجهة منبّه سلسلة المحادثات.

kInterfaceTypeThread

واجهة سلسلة المحادثات.

kInterfaceTypeTunnel

واجهة النفق.

kInterfaceTypeWiFi

واجهة WiFi.

تنفيذ النظام الأساسي

 PlatformActionExecution
أماكن إقامة
kPlatformActionExecutionContinue

مواصلة تنفيذ الإجراء.

kPlatformActionExecutionSuspendForAsynchOpCompletion

تعليق تنفيذ الإجراء لإكمال العملية غير المتزامنة.

نتيجة النظام الأساسي

 PlatformResult

عدد من قيم إرجاع واجهة برمجة التطبيقات المحتملة.

أماكن إقامة
kPlatformResultFailure

تعذّر تنفيذ واجهة برمجة التطبيقات.

kPlatformResultInProgress

العملية قيد التقدم وسيتم إكمالها بشكل غير متزامن.

kPlatformResultSuccess

اكتملت واجهة برمجة التطبيقات بنجاح.

أولوية المسار

 RoutePriority

تعداد أولويات محتملة للمسار بحيث يمكن إعطاء أحد المسارين الأولوية على طريق آخر.

نوع ميزة النظام

 SystemFeatureType
أماكن إقامة
kSystemFeatureTypeBorderRoutingEnabled

ميزة توجيه الحدود للنظام في "النظام" غير مُفعَّلة.

kSystemFeatureTypeCellularConnected

واجهة برمجة تطبيقات شبكة الجوّال غير متصلة.

kSystemFeatureTypeIsFabricMember

وحدة النسج على النظام (IS) | ليست عضوًا في أقمشة.

kSystemFeatureTypeMax

لا تتجاوز؛ محجوزة لوضع علامة على الحد الأقصى المتاح لوحدات البت.

kSystemFeatureTypeThreadConnected

واجهة برمجة تطبيقات النظام غير مكتملة | غير متصلة.

kSystemFeatureTypeThreadRoutingEnabled

ميزة توجيه الرسائل في نظام التشغيل غير مُفعَّلة.

kSystemFeatureTypeTunnelInterfaceEnabled

لم يتم تفعيل "واجهة نفق النظام".

kSystemFeatureTypeTunnelState

لم يتم إنشاء خدمة نفق النظام.

kSystemFeatureTypeWiFiConnected

نظام "شبكة WiFi" غير متصل | غير متصل.

رفوف النوع

وظيفة التطبيق

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

نوع العلامة

uint16_t FlagsType

المتغيّرات

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

الحالة

ModuleState sState

الدوال

تغيير حالة BorderRouter

void BorderRouterStateChange(
  InterfaceState inState
)

تم الاتصال بواجهة برمجة تطبيقات WARM للإعلان عن تغيير في الولاية لميزة جهاز توجيه الحدود.

التفاصيل
المعلَمات
[in] inState
kInterfaceStateUp إذا كانت ميزة جهاز توجيه الحدود، بخلاف kInterfaceStateDown بخلاف ذلك.

تغيير حالة شبكة الجوّال

void CellularInterfaceStateChange(
  InterfaceState inState
)

تم الاتصال بواجهة برمجة تطبيقات WARM للإعلان عن تغيير في الحالة لواجهة شبكة الجوّال.

التفاصيل
المعلَمات
[in] inState
kInterfaceStateUp إذا كانت واجهة شبكة الجوّال قيد التشغيل، وkInterfaceStateDown بخلاف ذلك.

تغيير FabricState

void FabricStateChange(
  InterfaceState inState
)

وظيفة أعلنت عن تغيير في حالة ميزة النسيج المنسوج.

التفاصيل
المعلَمات
[in] inState
kInterfaceStateUp إذا كان النظام عضوًا في نسيج Weave، يمكن استخدام kInterfaceStateDown بخلاف ذلك.

GetCurrentActionState

bool GetCurrentActionState(
  ActionType inAction
)

دالة ثابتة تعرض الحالة الحالية لإجراء محدّد.

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء لطلب البحث.
المرتجعات
صحيح إذا كان الإجراء "مضبوطًا"، أو خطأ "غير ذلك".

GetFabricState

WEAVE_ERROR GetFabricState(
  const WeaveFabricState *& outFabricState
)

واجهة برمجة تطبيقات WARM للحصول على الكائن FabricState الذي تم تقديمه إلى Warm أثناء Init.

التفاصيل
المعلَمات
[out] outFabricState
مرجع مؤشر إلى عنصر objectState.
قيم الإرجاع
WEAVE_NO_ERROR
النجاح.
WEAVE_ERROR_INCORRECT_STATE
في حال استدعاء واجهة برمجة التطبيقات هذه قبل إعداد WARM؟

GetSystemFeatureState

bool GetSystemFeatureState(
  SystemFeatureType inSystemFeature
)

دالة ثابتة تحصل على الحالة لإحدى ميزات النظام.

التفاصيل
المعلَمات
[in] inSystemFeature
ميزة النظام لطلب البحث.
المرتجعات
صحيح إذا كانت ميزة النظام مفعّلة، وبخلاف ذلك تكون غير صحيحة.

جيتولا

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

واجهة برمجة تطبيقات WARM لاكتساب ULA لنوع واجهة محدد.

التفاصيل
المعلَمات
[in] inInterfaceType
نوع الواجهة التي تطلب ULA.
[out] outAddress
كائن عنوان يُستخدَم لتثبيت ULA الناتج.
قيم الإرجاع
WEAVE_NO_ERROR
النجاح.
WEAVE_ERROR_INCORRECT_STATE
إذا تم استدعاء واجهة برمجة التطبيقات هذه إذا لم تكن WARM عضوًا في أقمشة.
WEAVE_ERROR_INVALID_ARGUMENT
إذا تم استدعاء واجهة برمجة التطبيقات هذه باستخدام نوع واجهة غير صالح

إنيت

WEAVE_ERROR Init(
  WeaveFabricState & inFabricState
)

واجهة برمجة تطبيقات WARM لإجراء إعداد وحدة زمنية لمرة واحدة.

التفاصيل
المعلَمات
[in] inFabricState
مرجع إلى WeaveFabricState صالح.
قيم الإرجاع
WEAVE_NO_ERROR
عند الإعداد الناجح:
WEAVE_ERROR_INCORRECT_STATE
عند استدعاء Init أكثر من مرة.
other
رمز الخطأ بخلاف ذلك.
المرتجعات
WEAVE_NO_ERROR على مستوى النجاح، ورمز الخطأ بخلاف ذلك.

إجراءات استدعاء

void InvokeActions(
  void
)

واجهة برمجة تطبيقات WARM تم طلبها بواسطة مهمة مُخصَّصة لتنفيذ إجراءات متنوعة لواجهة برمجة تطبيقات النظام الأساسي.

يمثل ذلك نقطة الدخول لتنفيذ الإجراءات اللازمة التي تلبي حالة النظام الحالية. على سبيل المثال، إذا تم نقل حزمة سلاسل المحادثات من"تم الإيقاف"إلى"تم التفعيل"، حينئذٍ ستجري هذه الدالة عمليات طلب النظام الأساسي اللازمة لتخصيص عنوان مضيف سلسلة المحادثات وما إلى ذلك. ويجب أن يتم استدعاء هذه الدالة باستخدام رمز النظام الأساسي فقط استجابة لاستدعاء Warm إلى RequestInvokeActions. سيؤدي استدعاء InvokeAction إلى إجراء مكالمة واحدة أو أكثر على nl::Warm::Platform API's. لذلك، على مطوّري البرامج تنفيذ RequestInvokeActions واستدعاء InvokeAction() بشكل مناسب. قد يكون من المناسب في طلب InvokeActions أن ينشر حدثًا في المهمة التي ستسمى InvokeAction() مثلاً. وفي المقابل، إذا كان النظام يتضمن سلسلة محادثات واحدة، يمكن تنفيذ RequestInvokeAction لاستدعاء InvokeAction() مباشرةً.

LegacyHostAddressAction

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

إحدى طرق التنفيذ.

يضبط عنوان المضيف للواجهة القديمة.

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء.
[in] inActivate
الحالة المطلوبة true == Activate, false == activate.
[in] inGlobalId
مرجع لمعرّف Weave Global إذا كان من الضروري احتساب العنوان.
[in] inInterfaceId
مرجع لمعرّف واجهة الجهاز إذا كان ذلك ضروريًا لحساب عنوان.
المرتجعات
لإعادة توجيه النتيجة من النظام الأساسي::HostAddress().

الإجراء LegacyThreadAddress

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

إحدى طرق التنفيذ.

لضبط عنوان سلسلة التعليمات لواجهة 6LoWPAN القديمة.

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء.
[in] inActivate
الحالة المطلوبة true == Activate, false == activate.
[in] inGlobalId
مرجع لمعرّف Weave Global إذا كان من الضروري احتساب العنوان.
[in] inInterfaceId
مرجع لمعرّف واجهة الجهاز إذا كان ذلك ضروريًا لحساب عنوان.
المرتجعات
لإعادة توجيه النتيجة من النظام الأساسي::ThreadAddress().

بادئة

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

أداة لإنشاء بادئة 48 بت من GlobalID.

التفاصيل
المعلَمات
[in] inGlobalID
مرجع لمعرّف Weave Global
[out] outPrefix
البادئة للإعداد.

توفر مدى التوفّر في Map

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

دالة ثابتة تعرِض عملية ربط من TunnelAvailability إلى RoutePriority.

التفاصيل
المعلَمات
[in] inAvailability
وضع توفّر نفق Weave.
المرتجعات
القيمة التي تم ربطها بالأولوية.

نتيجة تسجيل وسيط عرض الإعلان

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

دالة ثابتة تسجّل نتيجة استدعاء إجراء واجهة برمجة التطبيقات للنظام الأساسي.

تقدم هذه الوحدة طلبات لتنفيذ الإجراءات عبر واجهة برمجة تطبيقات خاصة بالنظام الأساسي. يجب على واجهة برمجة التطبيقات's الإبلاغ عن نتيجة kPlatformResultSuccess|kPlatformResultFailure|kPlatformResultInProgress لطلب الإجراء هذا. تسجّل هذه الدالة هذه النتيجة وتعرض القيمة "صحيح" إذا كانت النتيجة قيد التقدّم ويجب تأخير إجراءات أخرى.

التفاصيل
المعلَمات
[in] inResult
نتيجة واجهة برمجة تطبيقات النظام الأساسي
[in] inAction
الإجراء الذي حاولته واجهة برمجة تطبيقات النظام الأساسي.
[in] inActionState
حالة الإجراء الجديدة إذا كانت النتيجة ناجحة.
المرتجعات
صحيح أن واجهة برمجة تطبيقات النظام الأساسي تعالج الطلب بشكل غير متزامن أو لا تكون خطأ بخلاف ذلك.

اكتمل التقرير

void ReportActionComplete(
  PlatformResult inResult
)

تم طلب واجهة برمجة تطبيقات WARM للإعلان عن اكتمال طلب سابق لواجهة برمجة تطبيقات غير متزامن للنظام الأساسي.

ومن المفترض أن تحتاج واجهة برمجة التطبيقات لإجراء النظام الأساسي إلى عمليات غير متزامنة. إذا كان هذا صحيحًا، ستعرض واجهة برمجة تطبيقات النظام الأساسي kPlatformResultInProgress. وعند حدوث ذلك، سيتم تعليق العنوان الجديد وإجراءات التوجيه إلى أن يتصل النظام بـ ReportActionComplete للإعلان عن اكتمال العملية.

التفاصيل
المعلَمات
[in] inResult
نتيجة الإجراء المعلّق يجب أن تكون واحدة مما يلي: {kPlatformResultSuccess | kPlatformResultFailure}

ضبط حالة Currents الحالية

void SetCurrentActionState(
  ActionType inAction,
  bool inValue
)

دالة ثابتة تعمل على ضبط الحالة الحالية لإجراء محدد.

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء المطلوب تغييره.
[in] inValue
قيمة الولاية الجديدة المطلوب استخدامها.

تعيين ميزة النظام

bool SetSystemFeatureState(
  SystemFeatureType inSystemFeature,
  bool inValue
)

دالة ثابتة تعمل على ضبط الحالة الحالية لميزة النظام.

التفاصيل
المعلَمات
[in] inSystemFeature
ميزة النظام المراد إعدادها.
[in] inValue
قيمة الولاية الجديدة المطلوب استخدامها.
المرتجعات
صحيح إذا تم تغيير ميزة النظام، أم إذا كانت غير ذلك،

يجب تنفيذ الإجراء

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

دالة ثابتة تحدد ما إذا كان يجب تنفيذ الإجراء المحدد أم لا.

تفحص هذه الدالة حالة العلامات "حالة ميزة النظام" وتحدِّد ما إذا كان يجب تفعيل الإجراء المحدّد أو إيقافه. بعد ذلك، تفحص الدالة الحالة الحالية للإجراء وإذا لم يتم ضبط الإجراء على القيمة المطلوبة في حالة ميزة النظام، ستعرِض الدالة القيمة "صحيح" مع حالة الإجراء المطلوبة في outActivate.

التفاصيل
المعلَمات
[in] inAction
الإجراء الذي سيتم طلبه.
[in] inNecessarySystemFeatureState
علامات الولاية اللازمة لكي يصبح الإجراء نشطًا.
[out] outActivate
الحالة المطلوبة للإجراء.
المرتجعات
صحيح إذا لم يكن الإجراء بالحالة الحالية حاليًا، أو "خطأ" بخلاف ذلك.

SystemFeatureStateChangeHandler

void SystemFeatureStateChangeHandler(
  SystemFeatureType inSystemFeatureType,
  bool inState
)

دالة ثابتة تعمل على ضبط حالة ميزة النظام وإبلاغ النظام الأساسي بأن حالة الحدث قد طرأ عليها تغيير.

تم استدعاءها من خلال EventStateChange API's لتنفيذ عمليات التفاعل اللازمة.

التفاصيل
المعلَمات
[in] inSystemFeatureType
الحالة التي تم تغييرها تتناسب مع واجهة برمجة التطبيقات التي تم طلبها.
[in] inState
القيمة الجديدة للولاية.

اتخاذ إجراءات

void TakeActions(
  void
)

دالة ثابتة تعمل على اختبار حالة كل إجراء وإجراء طلب بيانات من واجهة برمجة التطبيقات للنظام الأساسي لتغيير حالة الإجراء إذا لزم الأمر.

وتستخدِم هذه الدالة NeedExecAction() لتحديد ما إذا كان يجب تغيير حالة الإجراء أو اتّخاذها. إذا كان يجب أن يؤدي في حالة تنفيذ Action() إلى استدعاء الدالة واجهة برمجة التطبيقات للإجراء المناسب لتنفيذ الإجراء من أجل وضعه في الحالة المطلوبة. يتم تمرير نتيجة استدعاء الإجراء لواجهة برمجة التطبيقات إلى RecordPlatformResult() وإذا عرضت هذه الدالة القيمة true، يتم إنهاء تنفيذ هذه الدالة.

إعلانات سلسلة المحادثات

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

إحدى طرق التنفيذ.

لضبط حالة إعلان سلسلة المحادثات

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء.
[in] inActivate
الحالة المطلوبة true == Activate, false == activate.
[in] inGlobalId
مرجع لمعرّف Weave Global إذا كان من الضروري احتساب العنوان.
[in] inInterfaceId
مرجع لمعرّف واجهة الجهاز إذا كان ذلك ضروريًا لحساب عنوان.
المرتجعات
لإعادة توجيه النتيجة من النظام الأساسي::ThreadAdvertisingment().

ThreadHostAddressAction

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

إحدى طرق التنفيذ.

لضبط عنوان المضيف لواجهة سلسلة المحادثات.

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء.
[in] inActivate
الحالة المطلوبة true == Activate, false == activate.
[in] inGlobalId
مرجع لمعرّف Weave Global إذا كان من الضروري احتساب العنوان.
[in] inInterfaceId
مرجع لمعرّف واجهة الجهاز إذا كان ذلك ضروريًا لحساب عنوان.
المرتجعات
لإعادة توجيه النتيجة من النظام الأساسي::HostAddress().

مسار مسار سلسلة المحادثات

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

إحدى طرق التنفيذ.

لضبط مسار المضيف لواجهة سلسلة المحادثات.

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء.
[in] inActivate
الحالة المطلوبة true == Activate, false == activate.
[in] inGlobalId
مرجع لمعرّف Weave Global إذا كان من الضروري احتساب العنوان.
[in] inInterfaceId
مرجع لمعرّف واجهة الجهاز إذا كان ذلك ضروريًا لحساب عنوان.
المرتجعات
لإعادة توجيه النتيجة من النظام الأساسي::HostRoute().

تغيير حالة سلسلة المحادثات

void ThreadInterfaceStateChange(
  InterfaceState inState
)

تم طلب واجهة برمجة تطبيقات WARM للإعلان عن تغيير في الحالة لواجهة Thread.

التفاصيل
المعلَمات
[in] inState
kInterfaceStateUp إذا كانت واجهة سلسلة المحادثات أعلى، تكون kInterfaceStateDown بخلاف ذلك.

أولوية أولوية سلسلة المحادثات

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

إحدى طرق التنفيذ.

إعداد أولوية مسار سلسلة المحادثات استنادًا إلى مدى توفّر النفق

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء.
[in] inActivate
الحالة المطلوبة true == Activate, false == activate.
[in] inGlobalId
مرجع لمعرّف Weave Global إذا كان من الضروري احتساب العنوان.
[in] inInterfaceId
مرجع لمعرّف واجهة الجهاز إذا كان ذلك ضروريًا لحساب عنوان.
المرتجعات
لإعادة توجيه النتيجة من النظام الأساسي::ThreadRoutePriority().

تغيير حالة سلسلة المحادثات

void ThreadRoutingStateChange(
  InterfaceState inState
)

تم الاتصال بواجهة برمجة تطبيقات WARM للإعلان عن تغيير في حالة ميزة "توجيه سلسلة المحادثات".

التفاصيل
المعلَمات
[in] inState
kInterfaceStateUp إذا كانت ميزة توجيه سلسلة المحادثات مفعّلة، وبخلاف kInterfaceStateDown.

إجراء سلسلة المحادثات

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

إحدى طرق التنفيذ.

لضبط عنوان سلسلة المحادثات لواجهة سلسلة المحادثات.

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء.
[in] inActivate
الحالة المطلوبة true == Activate, false == activate.
[in] inGlobalId
مرجع لمعرّف Weave Global إذا كان من الضروري احتساب العنوان.
[in] inInterfaceId
مرجع لمعرّف واجهة الجهاز إذا كان ذلك ضروريًا لحساب عنوان.
المرتجعات
لإعادة توجيه النتيجة من النظام الأساسي::ThreadAddress().

سلسلة محادثات الإجراء

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

إحدى طرق التنفيذ.

لضبط مسار سلسلة المحادثات لحزمة Thread.

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء.
[in] inActivate
الحالة المطلوبة true == Activate, false == activate.
[in] inGlobalId
مرجع لمعرّف Weave Global إذا كان من الضروري احتساب العنوان.
[in] inInterfaceId
مرجع لمعرّف واجهة الجهاز إذا كان ذلك ضروريًا لحساب عنوان.
المرتجعات
لإعادة توجيه النتيجة من النظام الأساسي::ThreadRoute().

نفق HostAddressAction

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

إحدى طرق التنفيذ.

تعمل على إعداد HostAddress لواجهة النفق.

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء.
[in] inActivate
الحالة المطلوبة true == Activate, false == activate.
[in] inGlobalId
مرجع لمعرّف Weave Global إذا كان من الضروري احتساب العنوان.
[in] inInterfaceId
مرجع لمعرّف واجهة الجهاز إذا كان ذلك ضروريًا لحساب عنوان.
المرتجعات
لإعادة توجيه النتيجة من النظام الأساسي::HostAddress().

إجراء نفق HostHost

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

إحدى طرق التنفيذ.

تُحدّد HostRoute لواجهة النفق.

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء.
[in] inActivate
الحالة المطلوبة true == Activate, false == activate.
[in] inGlobalId
مرجع لمعرّف Weave Global إذا كان من الضروري احتساب العنوان.
[in] inInterfaceId
مرجع لمعرّف واجهة الجهاز إذا كان ذلك ضروريًا لحساب عنوان.
المرتجعات
لإعادة توجيه النتيجة من النظام الأساسي::HostRoute().

تغيير النفق

void TunnelInterfaceStateChange(
  InterfaceState inState
)

تم الاتصال بواجهة برمجة تطبيقات WARM للإعلان عن تغيير في الولاية لواجهة نفق Weave.

التفاصيل
المعلَمات
[in] inState
kInterfaceStateUp إذا كانت واجهة نفق Weave لأعلى، kInterfaceStateDown بخلاف ذلك.

تغيير حالة الأولوية

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

تم طلب واجهة برمجة تطبيقات WARM لتحديث أولوية خدمة النفق.

التفاصيل
المعلَمات
[in] inAvailability
القيمة الجديدة لحالة مدى توفّر النفق.

نفق الخدمة

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

تم الاتصال بواجهة برمجة تطبيقات WARM للإعلان عن تغيير في الولاية لواجهة نفق Weave.

التفاصيل
المعلَمات
[in] inState
kInterfaceStateUp إذا تم إنشاء خدمة نفق Weave، وkInterfaceStateDown بخلاف ذلك.
[in] inAvailability
حالة مدى التوفّر التي سيتم استخدامها لاحقًا في ضبط النفق.

إجراء بشأن WiFiHostAddress

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

إحدى طرق التنفيذ.

تُحدّد عنوان المضيف لواجهة WiFi.

التفاصيل
المعلَمات
[in] inAction
نوع الإجراء.
[in] inActivate
الحالة المطلوبة true == Activate, false == activate.
[in] inGlobalId
مرجع لمعرّف Weave Global إذا كان من الضروري احتساب العنوان.
[in] inInterfaceId
مرجع لمعرّف واجهة الجهاز إذا كان ذلك ضروريًا لحساب عنوان.
المرتجعات
لإعادة توجيه النتيجة من النظام الأساسي::HostAddress().

تغيير حالة WiFi

void WiFiInterfaceStateChange(
  InterfaceState inState
)

تم طلب واجهة برمجة تطبيقات WARM للإعلان عن تغيير في الولاية لواجهة WiFi.

التفاصيل
المعلَمات
[in] inState
kInterfaceStateUp إذا كانت واجهة WiFi أعلى، kInterfaceStateDown بخلاف ذلك.