NL::编织::简介::消息迭代器

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

为了明智地使用消息缓冲区,我们定义了这个迭代器,它可以用来跟踪边​​界等。

概括

遗产

:从继承NL ::纺织品::简介:: 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 *)

公共属性

uint8_t * thePoint

公共职能

消息迭代器

 MessageIterator(
  System::PacketBuffer *
)

构造方法。

细节
参数
aBuffer
要迭代的消息缓冲区。

附加

void append(
  void
)

将点设置为当前缓冲区中的任何数据之后。

写完

void finishWriting(
  void
)

写入后调整缓冲区。

有数据

bool hasData(
  uint16_t
)

细节
参数
inc
可以从缓冲区读取的整数数量。
返回值
true
缓冲区的当前数据长度大于或等于给定的增量。
false
除此以外。

有房间

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。

操作员-

MessageIterator & operator-(
  uint16_t
)

细节
参数
dec
应用于消息迭代器的递减量。
退货
如果有空间,迭代器将递减给定的值,否则,如果没有,则直接撞到开头。

运算符==

bool operator==(
  const MessageIterator &
)

细节
参数
aMessageIterator
另一个要比较的消息迭代器。

读16

WEAVE_ERROR read16(
  uint16_t *
)

细节
参数
aDestination
一个可以从缓冲区中读取简短内容的地方。
返回值
WEAVE_NO_ERROR
如果一切正常。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果我们跑过缓冲区的末尾。

读32

WEAVE_ERROR read32(
  uint32_t *
)

细节
参数
aDestination
放置从缓冲区读取的 32 位值的位置。
返回值
WEAVE_NO_ERROR
如果一切正常。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果我们跑过缓冲区的末尾。

读64

WEAVE_ERROR read64(
  uint64_t *
)

细节
参数
aDestination
放置从缓冲区读取的 64 位值的位置。
返回值
WEAVE_NO_ERROR
如果一切正常。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果我们跑过缓冲区的末尾。

读取字节

WEAVE_ERROR readByte(
  uint8_t *
)

细节
参数
aDestination
放置从缓冲区读取的字节的地方。
返回值
WEAVE_NO_ERROR
如果一切正常。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果我们跑过缓冲区的末尾。

读取字节数

WEAVE_ERROR readBytes(
  uint16_t,
  uint8_t *
)

细节
参数
aLength
要读取的字节字符串的长度。
aByteString
放置字节的地方。
返回值
WEAVE_NO_ERROR
如果一切正常。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果我们跑过缓冲区的末尾。

读取字符串

WEAVE_ERROR readString(
  uint16_t,
  char *
)

细节
参数
aLength
要读取的字符串的长度。
aString
放绳子的地方。
返回值
WEAVE_NO_ERROR
如果一切正常。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果我们跑过缓冲区的末尾。

写16

WEAVE_ERROR write16(
  uint16_t
)

细节
参数
aValue
要写出的短值。
返回值
WEAVE_NO_ERROR
如果一切正常。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果我们跑过缓冲区的末尾。

写32

WEAVE_ERROR write32(
  uint32_t
)

细节
参数
aValue
要写出的 32 位值。
返回值
WEAVE_NO_ERROR
如果一切正常。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果我们跑过缓冲区的末尾。

写64

WEAVE_ERROR write64(
  uint64_t
)

细节
参数
aValue
要写出的 64 位值。
返回值
WEAVE_NO_ERROR
如果一切正常。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果我们跑过缓冲区的末尾。

写字节

WEAVE_ERROR writeByte(
  uint8_t
)

细节
参数
aValue
要写出的字节值。
返回值
WEAVE_NO_ERROR
如果一切正常。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果我们跑过缓冲区的末尾。

写字节数

WEAVE_ERROR writeBytes(
  uint16_t,
  uint8_t *
)

细节
参数
aLength
要写入的字节字符串的长度。
aString
字节串本身。
返回值
WEAVE_NO_ERROR
如果一切正常。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果我们跑过缓冲区的末尾。

写字符串

WEAVE_ERROR writeString(
  uint16_t,
  char *
)

细节
参数
aLength
要写入的字符串的长度。
aString
字符串本身。
返回值
WEAVE_NO_ERROR
如果一切正常。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果我们跑过缓冲区的末尾。