تعتيم

تتضمن هذه الوحدة تجريد النظام الأساسي لدعم العرض المتعدد.

ملخّص

الدوال

otPlatMultipanGetActiveInstance(otInstance **aInstance)
الحصول على مثيل يتم التحكم فيه في الراديو حاليًا.
otPlatMultipanIidToInstance(uint8_t aIid)
احصل على مؤشر المثيل المقابل لمعرّف IID المحدّد.
otPlatMultipanInstanceToIid(otInstance *aInstance)
uint8_t
احصل على معرّف IID المقابل لمؤشر مثيل OpenThread المحدد.
otPlatMultipanSetActiveInstance(otInstance *aInstance, bool aCompletePending)
ضبط aInstance باعتباره المثيل النشط الحالي الذي يتحكم في الراديو.
otPlatMultipanSwitchoverDone(otInstance *aInstance, bool aSuccess)
void
أكمل النظام الأساسي إجراء تبديل الواجهة.

الدوال

otPlatMultipanGetActiveInstance

otError otPlatMultipanGetActiveInstance(
  otInstance **aInstance
)

الحصول على مثيل يتم التحكم فيه في الراديو حاليًا.

إذا كان الاتصال اللاسلكي لا يعمل بالتوازي على جميع الواجهات، تعرِض هذه الدالة كائن مثيلاً لديه إذن وصول لاسلكي ممنوح.

التفاصيل
المَعلمات
[out] aInstance
مؤشر إلى المتغيّر لتخزين مؤشر المثيل النشط
قيم الإرجاع
OT_ERROR_NONE
تم استرداد الموقع بنجاح.
OT_ERROR_NOT_IMPLEMENTED
تعذّر الاتصال بسبب عدم التوافق مع الراديو.
OT_ERROR_INVALID_COMMAND
يدعم النظام الأساسي جميع الواجهات في الوقت نفسه.

otPlatMultipanIidToInstance

otInstance * otPlatMultipanIidToInstance(
  uint8_t aIid
)

احصل على مؤشر المثيل المقابل لمعرّف IID المحدّد.

التفاصيل
المَعلمات
[in] aIid
معرّف IID للواجهة
قيم الإرجاع
Instance
إذا كان aIid يحتوي على مثيل معين، أو nullptr بخلاف ذلك.

otPlatMultipanInstanceToIid

uint8_t otPlatMultipanInstanceToIid(
  otInstance *aInstance
)

احصل على معرّف IID المقابل لمؤشر مثيل OpenThread المحدد.

التفاصيل
المَعلمات
[in] aInstance
بنية النسخة الافتراضية OpenThread
قيم الإرجاع
IID
للمثيل المعني، أو بث IID بطريقة أخرى.

otPlatMultipanSetActiveInstance

otError otPlatMultipanSetActiveInstance(
  otInstance *aInstance,
  bool aCompletePending
)

ضبط aInstance باعتباره المثيل النشط الحالي الذي يتحكم في الراديو.

تسمح هذه الدالة بتحديد المثيل النشط حاليًا على الأنظمة الأساسية التي لا تتيح الاتصال الموازي على واجهات متعددة. بمعنى آخر، إذا كان هناك أكثر من مثيل واحد في حالة الاستلام، يضمن استدعاء otPlatMultipanSetActiveInstance أنّ المثيل المحدّد سيكون هو المثيل الذي يتم استلامه. تعرض هذه الدالة إذا تم استلام الطلب بشكل صحيح. بعد اكتمال تبديل الواجهة، يجب أن يطلب النظام الأساسي الأمر otPlatMultipanSwitchoverDone. قد يستغرق تبديل الواجهات وقتًا أطول في حال ضبط سياسة aCompletePending على "صحيح".

التفاصيل
المَعلمات
[in] aInstance
بنية النسخة الافتراضية OpenThread
[in] aCompletePending
صحيح إذا كان يجب أن تكتمل عملية الراديو الجارية قبل تبديل الواجهة (التبديل الجزئي)، و"خطأ" عند الفرض للتبديل.
قيم الإرجاع
OT_ERROR_NONE
تم ضبط الخاصية بنجاح.
OT_ERROR_BUSY
تعذّر تنفيذ العملية بسبب عملية أخرى جارية.
OT_ERROR_NOT_IMPLEMENTED
تعذّر تنفيذ الإجراء بسبب مثيل غير معروف أو عدد مثيلات أكثر من الواجهات المتاحة.
OT_ERROR_INVALID_COMMAND
يدعم النظام الأساسي جميع الواجهات في الوقت نفسه.
OT_ERROR_ALREADY
الواجهة المحددة نشطة حاليًا.

otPlatMultipanSwitchoverDone

void otPlatMultipanSwitchoverDone(
  otInstance *aInstance,
  bool aSuccess
)

أكمل النظام الأساسي إجراء تبديل الواجهة.

يجب استدعاءها مباشرةً بعد معالجة otPlatMultipanSetActiveInstance في حال عدم الحاجة إلى أي تأخير، أو في حال الحاجة إلى إكمال بعض العمليات اللاسلكية الأطول أولاً، وذلك بعد اكتمال التبديل في الواجهات تمامًا.

التفاصيل
المَعلمات
[in] aInstance
بنية النسخة الافتراضية OpenThread
[in] aSuccess
صواب إذا تم تبديل الواجهات بنجاح، والخطأ في حالة فشل التبديل.

المراجِع

تنشأ المواضيع المرجعية لواجهة برمجة تطبيقات OpenThread من رمز المصدر المتاح على GitHub. للحصول على مزيد من المعلومات أو للمساهمة في مستنداتنا، يمكنك الاطّلاع على المراجع.