nl:: بافت:: پروفایل ها:: به روز رسانی نرم افزار:: UpdateSchemeList

#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>

یک کلاس کمکی برای نگهداری لیستی از طرح های به روز رسانی به عنوان بخشی از کوئری تصویر.

خلاصه

یک بسته بندی ساده، به اندازه ای که هر زیر مجموعه ای از طرح های به روز رسانی ممکن را در خود جای دهد. برای انجام این کار، اندازه آن برابر با تعداد عناصر موجود در UpdateSchemes است که برای تولید لیست طرح های به روز رسانی پشتیبانی شده در پیام ImageQuery استفاده می شود.

سازندگان و ویرانگرها

UpdateSchemeList ()
سازنده پیش فرض برای UpdateSchemeList .

صفات عمومی

theLength
uint8_t
طول لیست عناصر پشتیبانی شده
theList [kUpdateScheme_Last]
uint8_t
کانتینری که طرح های به روز رسانی پشتیبانی شده را در خود نگه می دارد.

توابع عمومی

init (uint8_t, uint8_t *)
به صراحت IntegrityTypeList را با لیستی از IntegrityTypes پشتیبانی شده مقداردهی کنید.
operator== (const UpdateSchemeList &) const
bool
یک عملگر برابری
pack ( MessageIterator &)
شی را به MessageIterator ارائه شده سریال کنید.

توابع استاتیک عمومی

parse ( MessageIterator &, UpdateSchemeList &)
شیء را از MessageIterator داده شده در UpdateSchemeList ارائه شده از حالت سریال خارج کنید.

صفات عمومی

طول

uint8_t theLength

طول لیست عناصر پشتیبانی شده

طول 0 نشان دهنده یک لیست خالی است

لیست

uint8_t theList[kUpdateScheme_Last]

کانتینری که طرح های به روز رسانی پشتیبانی شده را در خود نگه می دارد.

اندازه آن برابر با تعداد عناصر موجود در UpdateSchemes است

توابع عمومی

UpdateSchemeList

 UpdateSchemeList()

سازنده پیش فرض برای UpdateSchemeList .

یک لیست منطقی خالی می سازد. لیست ممکن است از طریق متد init() یا با deserialized لیست از یک پیام پر شود.

init

WEAVE_ERROR init(
  uint8_t,
  uint8_t *
)

به صراحت IntegrityTypeList را با لیستی از IntegrityTypes پشتیبانی شده مقداردهی کنید.

جزئیات
پارامترها
[in] aLength
یک مقدار 8 بیتی برای طول لیست. باید کمتر از تعداد enum ها در UpdateSchemes باشد.
[in] aList
اشاره گر به آرایه ای از مقادیر UpdateSchemes . فقط اگر aLength 0 باشد ممکن است NULL باشد.
ارزش های بازگشتی
WEAVE_NO_ERROR
در مورد موفقیت
WEAVE_ERROR_INVALID_LIST_LENGTH
اگر طول خیلی زیاد باشد

اپراتور==

bool operator==(
  const UpdateSchemeList &
) const 

یک عملگر برابری

جزئیات
پارامترها
another
فهرستی برای بررسی در برابر این لیست
برمی گرداند
اگر لیست ها برابر باشند درست است، در غیر این صورت نادرست است

بسته

WEAVE_ERROR pack(
  MessageIterator &
)

شی را به MessageIterator ارائه شده سریال کنید.

جزئیات
پارامترها
[in] i
یک تکرار کننده روی پیام در حال بسته بندی
ارزش های بازگشتی
WEAVE_NO_ERROR
در مورد موفقیت
WEAVE_ERROR_BUFFER_TOO_SMALL
اگر لیست بیش از حد طولانی است که در پیام جا نمی شود.

توابع استاتیک عمومی

تجزیه

WEAVE_ERROR parse(
  MessageIterator &,
  UpdateSchemeList &
)

شیء را از MessageIterator داده شده در UpdateSchemeList ارائه شده از حالت سریال خارج کنید.

جزئیات
پارامترها
[in] i
یک تکرار کننده روی پیام در حال تجزیه.
[in] aList
ارجاع به یک شی که حاوی نتیجه باشد
ارزش های بازگشتی
WEAVE_NO_ERROR
در مورد موفقیت
WEAVE_ERROR_BUFFER_TOO_SMALL
پیام خیلی کوتاه بود
WEAVE_ERROR_INVALID_LIST_LENGTH
اگر پیام حاوی طول لیست نامعتبر بود (یا داده‌های کافی برای پر کردن لیست وجود ندارد یا تعداد آن‌ها بسیار زیاد است که در محدوده‌ها قرار نمی‌گیرد)