Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

nl::Weave::Profiles::ReferencedTLVData

#include <src/lib/profiles/common/WeaveMessage.h>

同様に、TLV データの大きな古い blob を表すことができなければなりません。

まとめ

継承

継承元: nl::Weave::Profiles::RetainedPacketBuffer

コンストラクタとデストラクタ

ReferencedTLVData(void)
-------------- TLV データの定義 --------------

パブリック タイプ

TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState) typedef
void(*

パブリック属性

theData
uint8_t *
theLength
uint16_t
theMaxLength
uint16_t

パブリック関数

free(void)
void
ReferencedTLVData オブジェクトを解放します。このオブジェクトが未定義になります。
init(System::PacketBuffer *aBuffer)
PacketBuffer を使用して ReferencedTLVData オブジェクトを初期化します。
init(MessageIterator & i)
MessageIterator を指定して、ReferencedTLVData オブジェクトを初期化します。
init(uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString)
バイト文字列を指定して ReferencedTLVObject を初期化します。
init(TLVWriteCallback aWriteCallback, void *anAppState)
コールバック関数を指定して、ReferereddTLVData オブジェクトを初期化します。
isEmpty(void)
bool
ReferencedTLVData オブジェクトが格納されているかどうかを確認します。
isFree(void)
bool
ReferencedTLVData オブジェクトが「free」である(つまり、
operator==(const ReferencedTLVData &) const
bool
ReferencedTLVData オブジェクトと等しいかどうかを確認します。
pack(System::PacketBuffer *buff)
ReferencedTLVData オブジェクトを PacketBuffer に直接パックします。
pack(MessageIterator & i, uint32_t maxLen)
packedLength(void)
uint16_t
オブジェクトがバッファに詰められていると仮定して、データ長を返します。

静的パブリック関数

parse(System::PacketBuffer *buff, ReferencedTLVData & aTarget)
指定された PacketBuffer から ReferencedTLVData オブジェクトを解析します。
parse(MessageIterator & i, ReferencedTLVData & aTarget)
指定された MessageIterator から ReferencedTLVData オブジェクトを解析します。

パブリック タイプ

TLVWriteCallback(TLVWriteCallback)

void(* TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)

パブリック属性

データ

uint8_t * theData

長さ

uint16_t theLength

最大長

uint16_t theMaxLength

パブリック関数

ReferencedTLVData

 ReferencedTLVData(
  void
)

-------------- TLV データの定義 --------------

TLV データ用の引数なしコンストラクタ。自由形式の初期化されていないオブジェクトを提供します。このオブジェクトは、役立つように、ここで定義されている init() メソッドのいずれかに従う必要があります。

無料

void free(
  void
)

ReferencedTLVData オブジェクトを解放します。このオブジェクトが未定義になります。

init

WEAVE_ERROR init(
  System::PacketBuffer *aBuffer
)

PacketBuffer を使用して ReferencedTLVData オブジェクトを初期化します。

バッファが TLV いっぱいになった状態で、ReferencedTLVData オブジェクトを初期化します。これは、バッファに TLV のみが含まれていることを前提としています。

詳細
パラメータ
[in] aBuffer
TLV が存在するメッセージ バッファ。
戻り値
WEAVE_NO_ERROR
無条件

init

WEAVE_ERROR init(
  MessageIterator & i
)

MessageIterator を指定して、ReferencedTLVData オブジェクトを初期化します。

MessageIterator を指定して、ReferencedTLVData オブジェクトを初期化します。この場合、TLV はバッファの最後の部分であり、バッファが参照しているメッセージ イテレータを渡します。

詳細
パラメータ
[in] i
抽出される TLV を指すメッセージ イテレータ。
戻り値
WEAVE_NO_ERROR
無条件

init

WEAVE_ERROR init(
  uint16_t aLength,
  uint16_t aMaxLength,
  uint8_t *aByteString
)

バイト文字列を指定して ReferencedTLVObject を初期化します。

TLV を含むバイト文字列で ReferencedTLVData オブジェクトを初期化します。このイニシャライザは、PacketrBuffer がない場合はパッケージ化して送信するので、このイニシャライザを使用します。

詳細
パラメータ
[in] aLength
TLV データの長さ
[in] aMaxLength
バッファの合計長
[in] aByteString
文字列データへのポインタ
戻り値
WEAVE_NO_ERROR
無条件

init

WEAVE_ERROR init(
  TLVWriteCallback aWriteCallback,
  void *anAppState
)

コールバック関数を指定して、ReferereddTLVData オブジェクトを初期化します。

ReferencedTLVData オブジェクトを初期化します。このバージョンでは、データを明示的に提供するのではなく、参照されるデータがパックされて送信されるときに、関数、書き込みコールバック、参照オブジェクト(TLVWriter オブジェクトとともに)を渡します。そのコールバックのシグネチャを次に示します。

typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);

詳細
パラメータ
[in] aWriteCallback
TLV を書き込む際に呼び出される関数。
[in] anAppState
アプリケーション状態オブジェクト(ライターと一緒にコールバックに渡される)。
戻り値
WEAVE_NO_ERROR
成功
WEAVE_ERROR_INVALID_ARGUMENT
書き込みコールバックが指定されていない場合。

isEmpty

bool isEmpty(
  void
)

ReferencedTLVData オブジェクトが格納されているかどうかを確認します。

オブジェクトが長さが 0 であるか、書き込みコールバックがない可能性があります。

詳細
戻り値
データセットの長さが 0 の場合、または手書き書き込みのコールバックがない場合は true、それ以外の場合は false。

isFree

bool isFree(
  void
)

ReferencedTLVData オブジェクトが「free」である(つまり、

定義されていません。

詳細
戻り値
オブジェクトが定義されていない場合は true、それ以外の場合は false。

オペレーター==

bool operator==(
  const ReferencedTLVData &
) const 

ReferencedTLVData オブジェクトと等しいかどうかを確認します。

これは、2 つのオブジェクトのうち、実際のデータがバッファまたは文字列でバックアップされている場合にのみ使用します。

詳細
パラメータ
[in] Another
チェックするオブジェクト
戻り値
true
オブジェクトは等しい。
false
オブジェクトの文字列が等しくありません。

パック

WEAVE_ERROR pack(
  System::PacketBuffer *buff
)

ReferencedTLVData オブジェクトを PacketBuffer に直接パックします。

詳細
パラメータ
[in] buff
適用するバッファ。
戻り値
WEAVE_ERROR: 基になる Pack 呼び出しの成功が反映されます。

パック

WEAVE_ERROR pack(
  MessageIterator & i,
  uint32_t maxLen
)

PackedLength

uint16_t packedLength(
  void
)

オブジェクトがバッファに詰められていると仮定して、データ長を返します。

詳細
戻り値
パックされたデータの整数長です。

静的パブリック関数

parse

WEAVE_ERROR parse(
  System::PacketBuffer *buff,
  ReferencedTLVData & aTarget
)

指定された PacketBuffer から ReferencedTLVData オブジェクトを解析します。

Inet バッファから ReferencedTLVData オブジェクトを解析します(TLV のみが含まれていると仮定します)。

詳細
パラメータ
[in] buff
読み取り元のバッファ。
[out] aTarget
ReferencedTLVData オブジェクトによって「入力」されます。
戻り値
WEAVE_ERROR : 基盤となる解析呼び出しの成功が反映されます。

parse

WEAVE_ERROR parse(
  MessageIterator & i,
  ReferencedTLVData & aTarget
)

指定された MessageIterator から ReferencedTLVData オブジェクトを解析します。

メッセージの TLV 部分を指すと想定される MessageIterator オブジェクトの ReferenceTLVData オブジェクトを解析します。

TLV はバッファに残され、操作されないため、ここでは実際の「解析」は行われません。このメソッドでは主に、後で使用するために ReferencedTLVData 構造体を設定します。

詳細
パラメータ
[in] i
解析されるメッセージのイテレータ。
[out] aTarget
解析結果を格納する場所。
戻り値
WEAVE_NO_ERROR
無条件