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)
|
初始化“wide”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)
|
初始化“wide”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)
|
将发送的初始化消息打包到 PacketBuffer 中。
|
packedLength(void)
|
uint16_t
返回此发送 init 消息的打包长度。
|
公共静态函数 |
|
---|---|
parse(PacketBuffer *aBuffer, SendInit & aRequest)
|
将 PacketBuffer 中的数据解析为 SendInit 消息格式。
|
公共类型
MetaDataTLVWriteCallback
WEAVE_ERROR(* MetaDataTLVWriteCallback)(uint8_t *aBuffer, uint16_t aBufferLength, uint16_t &aNumBytesWritten, void *aAppState)
MetaDataTLVWriteCallback 提供了一种方法,可供客户端用来为 SendInit 提供其需要的任何元数据。
客户端根据需要自由提供预编码的 TLV(速度更快)、动态编码(使用更少的内存)、延迟编码(启动速度较快),等等。
在所有情况下,都假定回调生成的数据对于给定 SendInit 来说是常量,即无论何时调用都不会发生变化。这是因为该回调还用于计算任何此类已写出的 TLV(可以随时请求)的长度。
具体说明 | |||||||||
---|---|---|---|---|---|---|---|---|---|
参数 |
|
||||||||
返回值 |
|
公共属性
mAsynchronousModeSupported
bool mAsynchronousModeSupported
如果可以支持异步模式,则为 true。
mDefiniteLength
bool mDefiniteLength
如果长度字段存在,则为 true。
mLength
uint64_t mLength
传输中的数据的建议长度,0 表示无限期。
mMaxBlockSize
uint16_t mMaxBlockSize
传输时提议的块大小上限。
mReceiverDriveSupported
bool mReceiverDriveSupported
如果可以支持接收器驱动器,则为 true。
mSenderDriveSupported
bool mSenderDriveSupported
如果我们可以支持发送者驱动,则为 true。
mStartOffset
uint64_t mStartOffset
提议的数据起始偏移量。
mStartOffsetPresent
bool mStartOffsetPresent
如果存在起始偏移量字段,则为 true。
mVersion
uint8_t mVersion
我们决定采用的 BDX 协议版本。
mWideRange
bool mWideRange
如果偏移量和长度为 64 位,则为 True。
公共函数
SendInit
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 )
初始化“wide”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 )
初始化“wide”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 )
将发送的初始化消息打包到 PacketBuffer 中。
具体说明 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
packedLength
uint16_t packedLength( void )
返回此发送 init 消息的打包长度。
具体说明 | |
---|---|
返回值 |
打包后的消息长度
|
公共静态函数
parse
WEAVE_ERROR parse( PacketBuffer *aBuffer, SendInit & aRequest )