چند پانل
این ماژول شامل انتزاع پلتفرم برای پشتیبانی از چند لایه است.
خلاصه
کارکرد
otPlatMultipanGetActiveInstance
otError otPlatMultipanGetActiveInstance(
otInstance **aInstance
)
در حال حاضر کنترل رادیو را در دست بگیرید.
اگر رادیو به صورت موازی روی همه رابطها کار نکند، این تابع یک شی نمونه با دسترسی رادیویی اعطا شده را برمیگرداند.
جزئیات | مولفه های | [out] aInstance | اشاره گر به متغیر برای ذخیره نشانگر نمونه فعال. |
|
ارزش های بازگشتی | OT_ERROR_NONE | ملک با موفقیت بازیابی شد. | OT_ERROR_NOT_IMPLEMENTED | به دلیل عدم پشتیبانی در رادیو شکست خورد. | OT_ERROR_INVALID_COMMAND | پلتفرم از تمام رابط ها به طور همزمان پشتیبانی می کند. |
|
otPlatMultipanIidToInstance
otInstance * otPlatMultipanIidToInstance(
uint8_t aIid
)
نشانگر نمونه مربوط به ID داده شده را دریافت کنید.
جزئیات | مولفه های | |
ارزش های بازگشتی | Instance | اشاره گر اگر aIid است دارای یک نمونه اختصاص داده شده است، در غیر این صورت nullptr. |
|
otPlatMultipanInstanceToIid
uint8_t otPlatMultipanInstanceToIid(
otInstance *aInstance
)
IID مربوط به نشانگر نمونه OpenThread داده شده را دریافت کنید.
جزئیات | مولفه های | [in] aInstance | ساختار نمونه OpenThread. |
|
ارزش های بازگشتی | IID | از نمونه داده شده، ID ID را در غیر این صورت پخش کنید. |
|
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 API از کد منبع موجود در GitHub سرچشمه می گیرند. برای اطلاعات بیشتر، یا مشارکت در اسناد ما، به منابع مراجعه کنید.