nl::Weave::Profiles::SoftwareUpdate::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 *)
サポートされている IntegrityType のリストを使用して、IntegrityTypeList を明示的に初期化します。
operator==(const UpdateSchemeList &) const
bool
等価演算子。
pack(MessageIterator &)
指定された MessageIterator にオブジェクトをシリアル化します。

静的パブリック関数

parse(MessageIterator &, UpdateSchemeList &)
指定された MessageIterator のオブジェクトを、指定された UpdateSchemeList にシリアル化解除します。

パブリック属性

theLength

uint8_t theLength

サポートされている要素リストの長さ。

長さ 0 は空のリストを示します

theList

uint8_t theList[kUpdateScheme_Last]

サポートされている更新スキームを保持するコンテナ。

UpdateSchemes 内の要素数と同じサイズになります。

パブリック関数

UpdateSchemeList

 UpdateSchemeList()

UpdateSchemeList のデフォルト コンストラクタ。

論理的に空のリストを作成します。リストを挿入するには、init() メソッドを使用するか、メッセージからリストをデシリアライズします。

init

WEAVE_ERROR init(
  uint8_t,
  uint8_t *
)

サポートされている IntegrityType のリストを使用して、IntegrityTypeList を明示的に初期化します。

詳細
パラメータ
[in] aLength
リストの長さを表す 8 ビットの値。UpdateSchemes 内の列挙型の数より小さくする必要があります。
[in] aList
UpdateSchemes 値の配列へのポインタ。aLength が 0 の場合にのみ NULL にできます。
戻り値
WEAVE_NO_ERROR
成功時。
WEAVE_ERROR_INVALID_LIST_LENGTH
長さが長すぎる場合

演算子==

bool operator==(
  const UpdateSchemeList &
) const 

等価演算子。

詳細
パラメータ
another
このリストに対してチェックするリスト
戻り値
リストが等しい場合は true、そうでない場合は false

パック

WEAVE_ERROR pack(
  MessageIterator &
)

指定された MessageIterator にオブジェクトをシリアル化します。

詳細
パラメータ
[in] i
パッキングされているメッセージのイテレータ
戻り値
WEAVE_NO_ERROR
成功時。
WEAVE_ERROR_BUFFER_TOO_SMALL
リストが長すぎてメッセージに収まらない場合。

静的パブリック関数

parse

WEAVE_ERROR parse(
  MessageIterator &,
  UpdateSchemeList &
)

指定された MessageIterator のオブジェクトを、指定された UpdateSchemeList にシリアル化解除します。

詳細
パラメータ
[in] i
解析されるメッセージのイテレータです。
[in] aList
結果を格納するオブジェクトへの参照
戻り値
WEAVE_NO_ERROR
成功時。
WEAVE_ERROR_BUFFER_TOO_SMALL
メッセージが短すぎます。
WEAVE_ERROR_INVALID_LIST_LENGTH
メッセージに無効なリストの長さ(リストを埋めるのに十分なデータがない、または多すぎて上限に収まらない)が含まれていた場合