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
要疊代的訊息緩衝區。

附加

void append(
  void
)

將點設為緩衝區中現有資料之後的點。

finishWriting

void finishWriting(
  void
)

寫入後調整緩衝區。

hasData

bool hasData(
  uint16_t
)

詳細資料
參數
inc
可從緩衝區讀取的整數量。
傳回值
true
緩衝區目前的資料長度大於或等於指定的遞增量。
false
否則,

hasRoom

bool hasRoom(
  uint16_t
)

詳細資料
參數
inc
可寫入緩衝區的整數金額。
傳回值
true
緩衝區目前資料長度與允許的資料長度上限 (其可用資料長度) 之間的差距小於或等於指定的遞增量。
false
否則,

operator!=

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
如果作業在緩衝區結尾時。