Gửi ý kiến phản hồi
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
nl:: Weave:: Profiles:: MessageIterator
#include <src/lib/profiles/common/WeaveMessage.h>
Để sử dụng vùng đệm thông báo một cách hợp lý, chúng ta sẽ xác định phương thức lặp lại (iterator) này, có thể dùng để theo dõi các ranh giới, v.v.
Tóm tắt
Tính kế thừa
Kế thừa từ:
nl::Weave::Profiles::RetainedPacketBuffer
Thuộc tính công khai
thePoint
uint8_t * thePoint
Hàm công khai
MessageIterator
MessageIterator(
System::PacketBuffer *
)
Phương thức hàm khởi tạo.
Thông tin chi tiết
Các tham số
aBuffer
Vùng đệm thông báo để lặp lại.
append
void append(
void
)
Đặt điểm đến sau bất kỳ dữ liệu nào hiện có trong vùng đệm.
finishWriting
void finishWriting(
void
)
Điều chỉnh vùng đệm sau khi ghi.
hasData
bool hasData(
uint16_t
)
Thông tin chi tiết
Các tham số
inc
Số nguyên có thể đọc được từ vùng đệm.
Giá trị trả về
true
Độ dài dữ liệu hiện tại của vùng đệm lớn hơn hoặc bằng giá trị gia số cho trước.
false
Nếu không.
hasRoom
bool hasRoom(
uint16_t
)
Thông tin chi tiết
Các tham số
inc
Một số nguyên có thể được ghi vào vùng đệm.
Giá trị trả về
true
Chênh lệch giữa độ dài dữ liệu hiện tại và độ dài dữ liệu tối đa cho phép của vùng đệm (độ dài dữ liệu có sẵn của vùng đệm) nhỏ hơn hoặc bằng mức tăng đã cho.
false
Nếu không.
toán tử!=
bool operator!=(
const MessageIterator &
)
Thông tin chi tiết
Các tham số
aMessageIterator
Một trình lặp thông báo khác để so sánh.
toán tử*
uint8_t & operator*(
void
)
Thông tin chi tiết
Trả về
Những gì chúng ta đang xem xét trong vùng đệm.
toán tử+
MessageIterator & operator+(
uint16_t
)
Thông tin chi tiết
Các tham số
inc
Một mức tăng để áp dụng cho trình lặp thông báo.
Trả về
Trình lặp được tăng theo giá trị đã cho nếu còn chỗ hoặc nếu không có chỗ trống, thì trình lặp sẽ đẩy thẳng lên phía cuối nếu không còn chỗ.
toán tử ++
MessageIterator & operator++(
void
)
Tăng trình lặp lại tin nhắn lên 1 nếu còn chỗ.
operator-
MessageIterator & operator-(
uint16_t
)
Thông tin chi tiết
Các tham số
dec
Một mức giảm áp dụng cho trình lặp thông báo.
Trả về
Trình lặp được giảm dần theo giá trị đã cho nếu còn chỗ hoặc sẽ chồng lên ngay so với phần đầu nếu không có chỗ.
toán tử==
bool operator==(
const MessageIterator &
)
Thông tin chi tiết
Các tham số
aMessageIterator
Một trình lặp thông báo khác để so sánh.
read16
WEAVE_ERROR read16(
uint16_t *
)
Thông tin chi tiết
Các tham số
aDestination
Nơi để đưa một nội dung đọc ngắn ra khỏi vùng đệm.
Giá trị trả về
WEAVE_NO_ERROR
Nếu mọi thứ đều ổn.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu chúng tôi đang vượt quá cuối vùng đệm.
read32
WEAVE_ERROR read32(
uint32_t *
)
Thông tin chi tiết
Các tham số
aDestination
Một nơi để đặt giá trị 32 bit được đọc từ vùng đệm.
Giá trị trả về
WEAVE_NO_ERROR
Nếu mọi thứ đều ổn.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu chúng tôi đang vượt quá cuối vùng đệm.
read64
WEAVE_ERROR read64(
uint64_t *
)
Thông tin chi tiết
Các tham số
aDestination
Nơi để đặt giá trị 64 bit được đọc từ vùng đệm.
Giá trị trả về
WEAVE_NO_ERROR
Nếu mọi thứ đều ổn.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu chúng tôi đang vượt quá cuối vùng đệm.
readByte
WEAVE_ERROR readByte(
uint8_t *
)
Thông tin chi tiết
Các tham số
aDestination
Nơi để đọc byte ra khỏi vùng đệm.
Giá trị trả về
WEAVE_NO_ERROR
Nếu mọi thứ đều ổn.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu chúng tôi đang vượt quá cuối vùng đệm.
readBytes
WEAVE_ERROR readBytes(
uint16_t,
uint8_t *
)
Thông tin chi tiết
Các tham số
aLength
Độ dài của chuỗi byte cần đọc.
aByteString
Vị trí để đặt các byte.
Giá trị trả về
WEAVE_NO_ERROR
Nếu mọi thứ đều ổn.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu chúng tôi đang vượt quá cuối vùng đệm.
readString
WEAVE_ERROR readString(
uint16_t,
char *
)
Thông tin chi tiết
Các tham số
aLength
Độ dài của chuỗi cần đọc.
aString
Vị trí để đặt chuỗi.
Giá trị trả về
WEAVE_NO_ERROR
Nếu mọi thứ đều ổn.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu chúng tôi đang vượt quá cuối vùng đệm.
write16
WEAVE_ERROR write16(
uint16_t
)
Thông tin chi tiết
Các tham số
aValue
Một giá trị ngắn cần ghi ra.
Giá trị trả về
WEAVE_NO_ERROR
Nếu mọi thứ đều ổn.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu chúng tôi đang vượt quá cuối vùng đệm.
write32
WEAVE_ERROR write32(
uint32_t
)
Thông tin chi tiết
Các tham số
aValue
Một giá trị 32 bit để ghi.
Giá trị trả về
WEAVE_NO_ERROR
Nếu mọi thứ đều ổn.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu chúng tôi đang vượt quá cuối vùng đệm.
write64
WEAVE_ERROR write64(
uint64_t
)
Thông tin chi tiết
Các tham số
aValue
Một giá trị 64 bit để ghi.
Giá trị trả về
WEAVE_NO_ERROR
Nếu mọi thứ đều ổn.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu chúng tôi đang vượt quá cuối vùng đệm.
writeByte
WEAVE_ERROR writeByte(
uint8_t
)
Thông tin chi tiết
Các tham số
aValue
Một giá trị byte để ghi.
Giá trị trả về
WEAVE_NO_ERROR
Nếu mọi thứ đều ổn.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu chúng tôi đang vượt quá cuối vùng đệm.
writeBytes
WEAVE_ERROR writeBytes(
uint16_t,
uint8_t *
)
Thông tin chi tiết
Các tham số
aLength
Độ dài của chuỗi byte cần ghi.
aString
Chính chuỗi byte.
Giá trị trả về
WEAVE_NO_ERROR
Nếu mọi thứ đều ổn.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu chúng tôi đang vượt quá cuối vùng đệm.
writeString
WEAVE_ERROR writeString(
uint16_t,
char *
)
Thông tin chi tiết
Các tham số
aLength
Độ dài của chuỗi cần ghi.
aString
Chính chuỗi đó.
Giá trị trả về
WEAVE_NO_ERROR
Nếu mọi thứ đều ổn.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu chúng tôi đang vượt quá cuối vùng đệm.
Trừ khi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0 . Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers . Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle. Thread là nhãn hiệu đã đăng ký của Thread Group, Inc.
Cập nhật lần gần đây nhất: 2023-12-02 UTC.
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"Thiếu thông tin tôi cần"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Quá phức tạp/quá nhiều bước"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Đã lỗi thời"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"Vấn đề về bản dịch"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Vấn đề về mẫu/mã"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Khác"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Dễ hiểu"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Giúp tôi giải quyết được vấn đề"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Khác"
}]
Bạn muốn chia sẻ thêm với chúng tôi?