nl::Weave::Profiles::MessageIterator

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

メッセージ バッファを適切に使用するために、このイテレータを定義します。これを使用して、境界などを追跡できます。

概要

継承

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

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

MessageIterator(System::PacketBuffer *)
コンストラクタ メソッド。

パブリック属性

thePoint
uint8_t *

パブリック関数

append(void)
void
現在バッファにあるデータの後ろにポイントを設定します。
finishWriting(void)
void
書き込み後にバッファを調整します。
hasData(uint16_t)
bool
hasRoom(uint16_t)
bool
operator!=(const MessageIterator &)
bool
operator*(void)
uint8_t &
operator+(uint16_t)
operator++(void)
スペースがある場合は、メッセージ イテレータを 1 だけ増分します。
operator-(uint16_t)
operator==(const MessageIterator &)
bool
read16(uint16_t *)
read32(uint32_t *)
read64(uint64_t *)
readByte(uint8_t *)
readBytes(uint16_t, uint8_t *)
readString(uint16_t, char *)
write16(uint16_t)
write32(uint32_t)
write64(uint64_t)
writeByte(uint8_t)
writeBytes(uint16_t, uint8_t *)
writeString(uint16_t, char *)

パブリック属性

thePoint

uint8_t * thePoint

パブリック関数

MessageIterator

 MessageIterator(
  System::PacketBuffer *
)

コンストラクタ メソッド。

詳細
パラメータ
aBuffer
反復処理を行うメッセージ バッファ。

append

void append(
  void
)

現在バッファにあるデータの後ろにポイントを設定します。

finishWriting

void finishWriting(
  void
)

書き込み後にバッファを調整します。

hasData

bool hasData(
  uint16_t
)

詳細
パラメータ
inc
バッファから読み取れる整数値。
戻り値
true
バッファの現在のデータ長が、指定された増分値以上である。
false
それ以外の場合は、

hasRoom

bool hasRoom(
  uint16_t
)

詳細
パラメータ
inc
バッファに書き込むことができる整数値。
戻り値
true
バッファの現在のデータ長とバッファの最大許容データ長(使用可能なデータ長)の差が、指定された増分値以下であること。
false
それ以外の場合は、

演算子「!=」を使用する

bool operator!=(
  const MessageIterator &
)

詳細
パラメータ
aMessageIterator
比較対象の別のメッセージ イテレータです。

演算子*

uint8_t & operator*(
  void
)

詳細
戻り値
バッファの内容です。

演算子+

MessageIterator & operator+(
  uint16_t
)

詳細
パラメータ
inc
メッセージ イテレータに適用する増分。
戻り値
イテレータは、余裕がある場合は指定された値でインクリメントされ、余裕がない場合は、最後に逆方向にヒットします。

演算子 ++

MessageIterator & operator++(
  void
)

スペースがある場合は、メッセージ イテレータを 1 だけ増分します。

operator-

MessageIterator & operator-(
  uint16_t
)

詳細
パラメータ
dec
メッセージ イテレータに適用する減少量。
戻り値
イテレータは、余裕があれば指定された値で減分され、余裕がない場合は、最初から逆方向にヒットします。

演算子==

bool operator==(
  const MessageIterator &
)

詳細
パラメータ
aMessageIterator
比較対象の別のメッセージ イテレータです。

read16

WEAVE_ERROR read16(
  uint16_t *
)

詳細
パラメータ
aDestination
バッファから短い読み取りを書き込む場所。
戻り値
WEAVE_NO_ERROR
大丈夫であれば、
WEAVE_ERROR_BUFFER_TOO_SMALL
バッファの終わりを超えて実行している場合。

read32

WEAVE_ERROR read32(
  uint32_t *
)

詳細
パラメータ
aDestination
バッファから読み取られた 32 ビット値を格納する場所。
戻り値
WEAVE_NO_ERROR
大丈夫であれば、
WEAVE_ERROR_BUFFER_TOO_SMALL
バッファの終わりを超えて実行している場合。

read64

WEAVE_ERROR read64(
  uint64_t *
)

詳細
パラメータ
aDestination
バッファから読み取られた 64 ビット値を格納する場所。
戻り値
WEAVE_NO_ERROR
大丈夫であれば、
WEAVE_ERROR_BUFFER_TOO_SMALL
バッファの終わりを超えて実行している場合。

readByte

WEAVE_ERROR readByte(
  uint8_t *
)

詳細
パラメータ
aDestination
バッファから読み取ったバイトを配置する場所。
戻り値
WEAVE_NO_ERROR
大丈夫であれば、
WEAVE_ERROR_BUFFER_TOO_SMALL
バッファの終わりを超えて実行している場合。

readBytes

WEAVE_ERROR readBytes(
  uint16_t,
  uint8_t *
)

詳細
パラメータ
aLength
読み取るバイト文字列の長さ。
aByteString
バイトを格納する場所。
戻り値
WEAVE_NO_ERROR
大丈夫であれば、
WEAVE_ERROR_BUFFER_TOO_SMALL
バッファの終わりを超えて実行している場合。

readString

WEAVE_ERROR readString(
  uint16_t,
  char *
)

詳細
パラメータ
aLength
読み取る文字列の長さ。
aString
文字列を挿入する場所。
戻り値
WEAVE_NO_ERROR
大丈夫であれば、
WEAVE_ERROR_BUFFER_TOO_SMALL
バッファの終わりを超えて実行している場合。

write16

WEAVE_ERROR write16(
  uint16_t
)

詳細
パラメータ
aValue
書き出す短い値。
戻り値
WEAVE_NO_ERROR
大丈夫であれば、
WEAVE_ERROR_BUFFER_TOO_SMALL
バッファの終わりを超えて実行している場合。

write32

WEAVE_ERROR write32(
  uint32_t
)

詳細
パラメータ
aValue
書き出す 32 ビットの値。
戻り値
WEAVE_NO_ERROR
大丈夫であれば、
WEAVE_ERROR_BUFFER_TOO_SMALL
バッファの終わりを超えて実行している場合。

write64

WEAVE_ERROR write64(
  uint64_t
)

詳細
パラメータ
aValue
書き出す 64 ビットの値。
戻り値
WEAVE_NO_ERROR
大丈夫であれば、
WEAVE_ERROR_BUFFER_TOO_SMALL
バッファの終わりを超えて実行している場合。

writeByte

WEAVE_ERROR writeByte(
  uint8_t
)

詳細
パラメータ
aValue
書き出すバイト値。
戻り値
WEAVE_NO_ERROR
大丈夫であれば、
WEAVE_ERROR_BUFFER_TOO_SMALL
バッファの終わりを超えて実行している場合。

writeBytes

WEAVE_ERROR writeBytes(
  uint16_t,
  uint8_t *
)

詳細
パラメータ
aLength
書き込むバイト文字列の長さ。
aString
バイト文字列そのもの。
戻り値
WEAVE_NO_ERROR
大丈夫であれば、
WEAVE_ERROR_BUFFER_TOO_SMALL
バッファの終わりを超えて実行している場合。

writeString

WEAVE_ERROR writeString(
  uint16_t,
  char *
)

詳細
パラメータ
aLength
書き込む文字列の長さ。
aString
文字列そのもの。
戻り値
WEAVE_NO_ERROR
大丈夫であれば、
WEAVE_ERROR_BUFFER_TOO_SMALL
バッファの終わりを超えて実行している場合。