nl:: Weave:: Profiles:: BDX_Development:: SendInit
#include <src/lib/profiles/bulk-data-transfer/Development/BDXMessages.h>
SendInit 消息用于在发送者是发起者时发起交换。
摘要
继承
直接已知子类:nl::Weave::Profiles::BDX_Development::ReceiveInit
构造函数和构造函数 |
|
---|---|
SendInit(void)
|
公共类型 |
|
---|---|
MetaDataTLVWriteCallback)(uint8_t *aBuffer, uint16_t aBufferLength, uint16_t &aNumBytesWritten, void *aAppState)
|
typedef MetaDataTLVWriteCallback 提供了一种方法,可让客户端向 SendInit 提供其需要的任何元数据。 |
公共属性 |
|
---|---|
mAsynchronousModeSupported
|
bool
如果我们可以支持异步模式,则为 true。
|
mDefiniteLength
|
bool
如果长度字段存在,则为 True。
|
mFileDesignator
|
包含预先协商信息的字符串。
|
mLength
|
uint64_t
建议转移的数据长度,0 表示无限期。
|
mMaxBlockSize
|
uint16_t
建议在转移作业中使用的块大小上限。
|
mMetaData
|
(可选)TLV 元数据。
|
mMetaDataAppState
|
void *
TLV 元数据的可选应用状态。
|
mMetaDataWriteCallback
|
用于写出 TLV 元数据的可选函数。
|
mReceiverDriveSupported
|
bool
如果我们可以支持接收器驱动器,则为 true。
|
mSenderDriveSupported
|
bool
如果我们可以支持发件人云端硬盘,则设为 true。
|
mStartOffset
|
uint64_t
建议的数据起始偏移量。
|
mStartOffsetPresent
|
bool
如果存在起始偏移字段,则为 true。
|
mVersion
|
uint8_t
我们决定使用的 BDX 协议版本。
|
mWideRange
|
bool
如果偏移和长度为 64 位,则为 true。
|
公共函数 |
|
---|---|
init(uint8_t aVersion, bool aSenderDrive, bool aReceiverDrive, bool aAsynchMode, uint16_t aMaxBlockSize, uint64_t aStartOffset, uint64_t aLength, ReferencedString & aFileDesignator, ReferencedTLVData *aMetaData)
|
初始化一个“宽”SendInit。
|
init(uint8_t aVersion, bool aSenderDrive, bool aReceiverDrive, bool aAsynchMode, uint16_t aMaxBlockSize, uint32_t aStartOffset, uint32_t aLength, ReferencedString & aFileDesignator, ReferencedTLVData *aMetaData)
|
初始化一个“非宽”SendInit(32 位起始偏移量,32 位长度)
|
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)
|
初始化一个“宽”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)
|
初始化一个“非宽”SendInit(32 位起始偏移量,32 位长度)
|
operator==(const SendInit &) const
|
bool
SendInit 消息的等式比较。
|
pack(PacketBuffer *aBuffer)
|
将发送 init 消息封装到 PacketBuffer 中。
|
packedLength(void)
|
uint16_t
返回此发送 init 消息的打包长度。
|
公共静态函数 |
|
---|---|
parse(PacketBuffer *aBuffer, SendInit & aRequest)
|
将数据从 PacketBuffer 解析为 SendInit 消息格式。
|
公共类型
元数据 TLV 写入回调
WEAVE_ERROR(* MetaDataTLVWriteCallback)(uint8_t *aBuffer, uint16_t aBufferLength, uint16_t &aNumBytesWritten, void *aAppState)
MetaDataTLVWriteCallback 提供了一种方法,可让客户端向 SendInit 提供其需要的任何元数据。
客户端可根据需要提供预编码的 TLV(较快)、动态编码(使用较少的内存)、延迟编码(启动时更快地加载等)等。
在所有情况下,我们都假定回调生成的数据对于给定的 SendInit 是恒定的,也就是说,无论何时调用,这些数据都不会改变。这是因为回调还用于计算任何此类已写出 TLV 的长度,可以随时请求。
详细信息 | |||||||||
---|---|---|---|---|---|---|---|---|---|
参数 |
|
||||||||
返回值 |
|
公共属性
mAsyncModeSupported
bool mAsynchronousModeSupported
如果我们可以支持异步模式,则为 true。
mDefiniteLength
bool mDefiniteLength
如果长度字段存在,则为 True。
米长度
uint64_t mLength
建议转移的数据长度,0 表示无限期。
mMaxBlockSize
uint16_t mMaxBlockSize
建议在转移作业中使用的块大小上限。
支持 mReceiverDrive
bool mReceiverDriveSupported
如果我们可以支持接收器驱动器,则为 true。
支持 mSenderDrive
bool mSenderDriveSupported
如果我们可以支持发件人云端硬盘,则设为 true。
mStartOffset
uint64_t mStartOffset
建议的数据起始偏移量。
mStartOffsetPresent
bool mStartOffsetPresent
如果存在起始偏移字段,则为 true。
移动版本
uint8_t mVersion
我们决定使用的 BDX 协议版本。
mWideRange
bool mWideRange
如果偏移和长度为 64 位,则为 true。
公共函数
发送
SendInit( void )
init
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 )
初始化一个“宽”SendInit。
详细信息 | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
参数 |
|
||||||||||||||||||
返回值 |
WEAVE_NO_ERROR(如果成功)
|
init
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 )
初始化一个“非宽”SendInit(32 位起始偏移量,32 位长度)
详细信息 | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
参数 |
|
||||||||||||||||||
返回值 |
WEAVE_NO_ERROR(如果成功)
|
init
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 )
初始化一个“宽”SendInit。
详细信息 | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
参数 |
|
||||||||||||||||||||
返回值 |
WEAVE_NO_ERROR(如果成功)
|
init
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 )
初始化一个“非宽”SendInit(32 位起始偏移量,32 位长度)
详细信息 | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
参数 |
|
||||||||||||||||||||
返回值 |
WEAVE_NO_ERROR(如果成功)
|
运算符==
bool operator==( const SendInit & ) const
包
WEAVE_ERROR pack( PacketBuffer *aBuffer )
将发送 init 消息封装到 PacketBuffer 中。
详细信息 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
包装长度
uint16_t packedLength( void )
返回此发送 init 消息的打包长度。
详细信息 | |
---|---|
返回值 |
邮件在打包后的长度
|
公共静态函数
parse
WEAVE_ERROR parse( PacketBuffer *aBuffer, SendInit & aRequest )