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
그렇지 않다면

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
버퍼의 끝을 넘어 실행 중인지 여부