Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.
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::Hồ sơ::BDX_Growthment::SendInit

#include <src/lib/profiles/bulk-data-transfer/Development/BDXMessages.h>

Thông báo GửiInit được dùng để bắt đầu trao đổi khi người gửi là người khởi tạo.

Tóm tắt

Tính kế thừa

Các lớp con đã biết trực tiếp: nl::Weave::Profiles::BDX_Growthment::ReceiveInit

Hàm dựng và hàm phá hủy

SendInit(void)

Loại công khai

MetaDataTLVWriteCallback)(uint8_t *aBuffer, uint16_t aBufferLength, uint16_t &aNumBytesWritten, void *aAppState) typedef
MetaDataTLVWriteCallback cung cấp phương tiện để khách hàng có thể cung cấp GửiInit cùng với mọi siêu dữ liệu họ muốn.

Thuộc tính công khai

mAsynchronousModeSupported
bool
True nếu chúng tôi có thể hỗ trợ chế độ không đồng bộ.
mDefiniteLength
bool
True nếu có trường độ dài.
mFileDesignator
Chuỗi chứa thông tin đã thương lượng trước.
mLength
uint64_t
Thời lượng đề xuất khi chuyển dữ liệu, 0 đối với dữ liệu vô thời hạn.
mMaxBlockSize
uint16_t
Kích thước khối tối đa đề xuất để sử dụng khi chuyển.
mMetaData
Siêu dữ liệu TLV (không bắt buộc).
mMetaDataAppState
void *
Trạng thái ứng dụng, không bắt buộc đối với Siêu dữ liệu TLV.
mMetaDataWriteCallback
Hàm không bắt buộc để ghi Siêu dữ liệu TLV.
mReceiverDriveSupported
bool
True nếu chúng tôi có thể hỗ trợ ổ đĩa nhận.
mSenderDriveSupported
bool
True nếu chúng tôi có thể hỗ trợ ổ người gửi.
mStartOffset
uint64_t
Mức chênh lệch bắt đầu được đề xuất của dữ liệu.
mStartOffsetPresent
bool
True nếu có trường bù bắt đầu.
mVersion
uint8_t
Phiên bản của giao thức BDX mà chúng tôi đã quyết định.
mWideRange
bool
True nếu bù và chiều dài là 64 bit.

Hàm công khai

init(uint8_t aVersion, bool aSenderDrive, bool aReceiverDrive, bool aAsynchMode, uint16_t aMaxBlockSize, uint64_t aStartOffset, uint64_t aLength, ReferencedString & aFileDesignator, ReferencedTLVData *aMetaData)
Khởi tạo "width" SendInit.
init(uint8_t aVersion, bool aSenderDrive, bool aReceiverDrive, bool aAsynchMode, uint16_t aMaxBlockSize, uint32_t aStartOffset, uint32_t aLength, ReferencedString & aFileDesignator, ReferencedTLVData *aMetaData)
Khởi tạo "không rộng" GửiInit (bù đầu ra 32 bit, độ dài 32 bit)
init(uint8_t aVersion, bool aSenderDrive, bool aReceiverDrive, bool aAsynchMode, uint16_t aMaxBlockSize, uint64_t aStartOffset, uint64_t aLength, ReferencedString & aFileDesignator, MetaDataTLVWriteCallback aMetaDataWriteCallback, void *aMetaDataAppState)
Khởi tạo "width" SendInit.
init(uint8_t aVersion, bool aSenderDrive, bool aReceiverDrive, bool aAsynchMode, uint16_t aMaxBlockSize, uint32_t aStartOffset, uint32_t aLength, ReferencedString & aFileDesignator, MetaDataTLVWriteCallback aMetaDataWriteCallback, void *aMetaDataAppState)
Khởi tạo "không rộng" GửiInit (bù đầu ra 32 bit, độ dài 32 bit)
operator==(const SendInit &) const
bool
So sánh đẳng cấp giữa các thông báo GửiInit.
pack(PacketBuffer *aBuffer)
Đóng gói gửi thông báo bắt đầu vào PacketBuffer.
packedLength(void)
uint16_t
Trả về độ dài đã đóng gói của tin nhắn init này.

Hàm tĩnh công khai

parse(PacketBuffer *aBuffer, SendInit & aRequest)
Phân tích cú pháp dữ liệu từ PacketBuffer thành định dạng thông báo GửiInit.

Loại công khai

MetaDataTLVWriteCallback

WEAVE_ERROR(* MetaDataTLVWriteCallback)(uint8_t *aBuffer, uint16_t aBufferLength, uint16_t &aNumBytesWritten, void *aAppState)

MetaDataTLVWriteCallback cung cấp phương tiện để khách hàng có thể cung cấp GửiInit cùng với mọi siêu dữ liệu họ muốn.

Ứng dụng có thể cung cấp TLV được mã hóa trước (nhanh hơn), mã hóa ngay cả khi đang sử dụng (sử dụng ít bộ nhớ hơn), mã hóa laz (nhanh hơn khi khởi động), v.v. khi họ thấy phù hợp.

Trong mọi trường hợp, hệ thống giả định rằng dữ liệu do lệnh gọi lại tạo ra là không đổi đối với một SendInit cụ thể, tức là không thay đổi bất kể thời điểm lệnh gọi đó được gọi. Điều này là do lệnh gọi lại cũng được dùng để tính toán độ dài của bất kỳ TLV đã ghi nào như vậy (có thể được yêu cầu bất cứ lúc nào).

Thông tin chi tiết
Các thông số
[in] aBuffer
Vùng đệm đích, có thể ghi một số TLV
[in] aBufferLength
Độ dài (tính bằng byte) của bộ đệm đích
[in,out] aNumBytesWritten
Số byte được ghi vào bộ đệm đích
[in] aAppState
Trạng thái ứng dụng do người dùng cung cấp
Giá trị trả về
WEAVE_ERROR
Đã xảy ra lỗi.

Thuộc tính công khai

mKhông chế độ được hỗ trợ

bool mAsynchronousModeSupported

True nếu chúng tôi có thể hỗ trợ chế độ không đồng bộ.

mDefiniteLength (Độ dài cố định)

bool mDefiniteLength

True nếu có trường độ dài.

Thiết kế tệp mFile

ReferencedString mFileDesignator

Chuỗi chứa thông tin đã thương lượng trước.

độ dài

uint64_t mLength

Thời lượng đề xuất khi chuyển dữ liệu, 0 đối với dữ liệu vô thời hạn.

mMaxBlockSize

uint16_t mMaxBlockSize

Kích thước khối tối đa đề xuất để sử dụng khi chuyển.

Dữ liệu tổng hợp

ReferencedTLVData mMetaData

Siêu dữ liệu TLV (không bắt buộc).

mMetaDataAppState

void * mMetaDataAppState

Trạng thái ứng dụng, không bắt buộc đối với Siêu dữ liệu TLV.

mmetaDataWriteCallback

MetaDataTLVWriteCallback mMetaDataWriteCallback

Hàm không bắt buộc để ghi Siêu dữ liệu TLV.

mNhậnrDrivesupported

bool mReceiverDriveSupported

True nếu chúng tôi có thể hỗ trợ ổ đĩa nhận.

mGửiDriveDrive

bool mSenderDriveSupported

True nếu chúng tôi có thể hỗ trợ ổ người gửi.

mStartoffset

uint64_t mStartOffset

Mức chênh lệch bắt đầu được đề xuất của dữ liệu.

mStartoffsetPresent

bool mStartOffsetPresent

True nếu có trường bù bắt đầu.

phiên bản mVersion

uint8_t mVersion

Phiên bản của giao thức BDX mà chúng tôi đã quyết định.

Dải ô rộng

bool mWideRange

True nếu bù và chiều dài là 64 bit.

Hàm công khai

Gửi thư

 SendInit(
  void
)

bắt đầu

WEAVE_ERROR init(
  uint8_t aVersion,
  bool aSenderDrive,
  bool aReceiverDrive,
  bool aAsynchMode,
  uint16_t aMaxBlockSize,
  uint64_t aStartOffset,
  uint64_t aLength,
  ReferencedString & aFileDesignator,
  ReferencedTLVData *aMetaData
)

Khởi tạo "width" SendInit.

Thông tin chi tiết
Các thông số
[in] aVersion
Phiên bản BDX mà chúng tôi đang sử dụng
[in] aSenderDrive
True nếu người gửi đang lái xe
[in] aReceiverDrive
True nếu người nhận đang lái xe
[in] aAsynchMode
True nếu thiết bị hỗ trợ chế độ không đồng bộ
[in] aMaxBlockSize
Đề xuất kích thước khối tối đa cho hoạt động chuyển này
[in] aStartOffset
Bắt đầu chênh lệch trong tệp mà chúng ta sẽ bắt đầu tại
[in] aLength
Thời lượng tệp cần chuyển – 0 có nghĩa là tệp có thời lượng vô hạn
[in] aFileDesignator
Chuỗi xác định dữ liệu cần chuyển
[in] aMetaData
(không bắt buộc) Dữ liệu bổ sung ở định dạng TLV
Trả về
WEAVE_NO_ERROR nếu thành công

bắt đầu

WEAVE_ERROR init(
  uint8_t aVersion,
  bool aSenderDrive,
  bool aReceiverDrive,
  bool aAsynchMode,
  uint16_t aMaxBlockSize,
  uint32_t aStartOffset,
  uint32_t aLength,
  ReferencedString & aFileDesignator,
  ReferencedTLVData *aMetaData
)

Khởi tạo "không rộng" GửiInit ( bù đầu ra 32 bit, độ dài 32 bit)

Thông tin chi tiết
Các thông số
[in] aVersion
Phiên bản BDX mà chúng tôi đang sử dụng
[in] aSenderDrive
True nếu người gửi đang lái xe
[in] aReceiverDrive
True nếu người nhận đang lái xe
[in] aAsynchMode
True nếu thiết bị hỗ trợ chế độ không đồng bộ
[in] aMaxBlockSize
Đề xuất kích thước khối tối đa cho hoạt động chuyển này
[in] aStartOffset
Bắt đầu chênh lệch trong tệp mà chúng ta sẽ bắt đầu tại
[in] aLength
Thời lượng tệp cần chuyển – 0 có nghĩa là tệp có thời lượng vô hạn
[in] aFileDesignator
Chuỗi xác định dữ liệu cần chuyển
[in] aMetaData
(không bắt buộc) Dữ liệu bổ sung ở định dạng TLV
Trả về
WEAVE_NO_ERROR nếu thành công

bắt đầu

WEAVE_ERROR init(
  uint8_t aVersion,
  bool aSenderDrive,
  bool aReceiverDrive,
  bool aAsynchMode,
  uint16_t aMaxBlockSize,
  uint64_t aStartOffset,
  uint64_t aLength,
  ReferencedString & aFileDesignator,
  MetaDataTLVWriteCallback aMetaDataWriteCallback,
  void *aMetaDataAppState
)

Khởi tạo "width" SendInit.

Thông tin chi tiết
Các thông số
[in] aVersion
Phiên bản BDX mà chúng tôi đang sử dụng
[in] aSenderDrive
True nếu người gửi đang lái xe
[in] aReceiverDrive
True nếu người nhận đang lái xe
[in] aAsynchMode
True nếu thiết bị hỗ trợ chế độ không đồng bộ
[in] aMaxBlockSize
Đề xuất kích thước khối tối đa cho hoạt động chuyển này
[in] aStartOffset
Bắt đầu chênh lệch trong tệp mà chúng ta sẽ bắt đầu tại
[in] aLength
Thời lượng tệp cần chuyển – 0 có nghĩa là tệp có thời lượng vô hạn
[in] aFileDesignator
Chuỗi xác định dữ liệu cần chuyển
[in] aMetaDataWriteCallback
(không bắt buộc) Một hàm để ghi dữ liệu bổ sung theo định dạng TLV
[in] aMetaDataAppState
Ngữ cảnh không bắt buộc cần chuyển vào aMetaDataWriteCallback
Trả về
WEAVE_NO_ERROR nếu thành công

bắt đầu

WEAVE_ERROR init(
  uint8_t aVersion,
  bool aSenderDrive,
  bool aReceiverDrive,
  bool aAsynchMode,
  uint16_t aMaxBlockSize,
  uint32_t aStartOffset,
  uint32_t aLength,
  ReferencedString & aFileDesignator,
  MetaDataTLVWriteCallback aMetaDataWriteCallback,
  void *aMetaDataAppState
)

Khởi tạo "không rộng" GửiInit ( bù đầu ra 32 bit, độ dài 32 bit)

Thông tin chi tiết
Các thông số
[in] aVersion
Phiên bản BDX mà chúng tôi đang sử dụng
[in] aSenderDrive
True nếu người gửi đang lái xe
[in] aReceiverDrive
True nếu người nhận đang lái xe
[in] aAsynchMode
True nếu thiết bị hỗ trợ chế độ không đồng bộ
[in] aMaxBlockSize
Đề xuất kích thước khối tối đa cho hoạt động chuyển này
[in] aStartOffset
Bắt đầu chênh lệch trong tệp mà chúng ta sẽ bắt đầu tại
[in] aLength
Thời lượng tệp cần chuyển – 0 có nghĩa là tệp có thời lượng vô hạn
[in] aFileDesignator
Chuỗi xác định dữ liệu cần chuyển
[in] aMetaDataWriteCallback
(không bắt buộc) Một hàm để ghi dữ liệu bổ sung theo định dạng TLV
[in] aMetaDataAppState
(không bắt buộc) Ngữ cảnh được chuyển trở lại hàm gọi lại
Trả về
WEAVE_NO_ERROR nếu thành công

toán tử==

bool operator==(
  const SendInit &
) const 

So sánh đẳng cấp giữa các thông báo GửiInit.

Thông tin chi tiết
Các thông số
[in] another
Một thông báo GửiInit khác để so sánh thư này với
Trả về
Đúng vậy, tất cả các trường đều giống nhau.

gói

WEAVE_ERROR pack(
  PacketBuffer *aBuffer
)

Đóng gói gửi thông báo bắt đầu vào PacketBuffer.

Thông tin chi tiết
Các thông số
[out] aBuffer
Một PacketBuffer để đóng gói thư GửiInit trong
Giá trị trả về
WEAVE_NO_ERROR
Nếu thành công
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu bộ đệm quá nhỏ

LengthLength

uint16_t packedLength(
  void
)

Trả về độ dài đã đóng gói của tin nhắn init này.

Thông tin chi tiết
Trả về
độ dài của tin nhắn khi được đóng gói

Hàm tĩnh công khai

phân tích cú pháp

WEAVE_ERROR parse(
  PacketBuffer *aBuffer,
  SendInit & aRequest
)

Phân tích cú pháp dữ liệu từ PacketBuffer thành định dạng thông báo GửiInit.

Thông tin chi tiết
Các thông số
[in] aBuffer
Trỏ tới một PacketBuffer chứa dữ liệu mà chúng ta muốn phân tích cú pháp
[out] aRequest
Trỏ đến một đối tượng GửiInit mà chúng ta sẽ lưu trữ kết quả
Giá trị trả về
WEAVE_NO_ERROR
Nếu thành công
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu bộ đệm quá nhỏ