nl:: Weave:: Profiles:: BDX_Development:: BDXTransfer
#include <src/lib/profiles/bulk-data-transfer/Development/BDXTransferState.h>
Struktur ini berisi anggota data yang mewakili transfer BDX aktif.
Ringkasan
Objek ini digunakan oleh BdxProtocol untuk mempertahankan status protokol. Mereka dikelola oleh BdxServer, yang menangani pembuatan dan inisialisasi transfer baru, termasuk mengelola Koneksi dan ExchangeContext.
Atribut publik |
|
---|---|
mAmInitiator
|
bool
|
mAmSender
|
bool
|
mAppState
|
void *
|
mBlockCounter
|
uint32_t
Nomor blok berikutnya yang akan menerima BlockQuery atau BlockACK untuk pengiriman (setelah transfer resmi dimulai).
|
mBytesSent
|
uint64_t
|
mExchangeContext
|
|
mFileDesignator
|
file/blokir anggota data terkait TODO: hapus ini? atau haruskah kita menetapkan kontrak
seperti apa dan bagaimana {i>string<i} ini akan digunakan? Secara khusus, apakah itu didukung oleh PacketBuffer? Jika demikian, gambar tersebut mungkin tidak akan bertahan di seluruh xfer karena akan membutuhkan pbuf
|
mFirstQuery
|
bool
|
mHandlers
|
|
mIsAccepted
|
bool
|
mIsCompletedSuccessfully
|
bool
|
mIsInitiated
|
bool
|
mIsWideRange
|
bool
|
mLength
|
uint64_t
|
mMaxBlockSize
|
uint16_t
|
mNext)(BDXTransfer &)
|
|
mStartOffset
|
uint64_t
|
mTransferMode
|
uint8_t
|
mVersion
|
uint8_t
|
Fungsi publik |
|
---|---|
DispatchErrorHandler(WEAVE_ERROR anErrorCode)
|
void
Jika pengendali error telah ditetapkan, panggil pengendali tersebut.
|
DispatchGetBlockHandler(uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock)
|
void
Jika pengendali blok get telah ditetapkan, panggil pengendali tersebut.
|
DispatchPutBlockHandler(uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock)
|
void
Jika pengendali blok put telah ditetapkan, panggil pengendali tersebut.
|
DispatchReceiveAccept(ReceiveAccept *aReceiveAcceptMsg)
|
Dispatcher cukup memeriksa apakah pengendali telah ditetapkan dan kemudian memanggilnya jika telah ditetapkan.
|
DispatchRejectHandler(StatusReport *aReport)
|
void
Jika pengendali penolakan telah ditetapkan, panggil pengendali tersebut.
|
DispatchSendAccept(SendAccept *aSendAcceptMsg)
|
Jika pengendali pengiriman penerimaan telah ditetapkan, panggil pengendali tersebut.
|
DispatchXferDoneHandler(void)
|
void
Jika pengendali transfer selesai telah ditetapkan, panggil pengendali tersebut.
|
DispatchXferErrorHandler(StatusReport *aXferError)
|
void
Jika pengendali error transfer telah ditetapkan, panggil pengendali tersebut.
|
GetDefaultFlags(bool aExpectResponse)
|
uint16_t
Fungsi ini menampilkan tanda default yang akan dikirim bersama pesan.
|
IsAsync(void)
|
bool
Returns true if this transfer is asynchronous, false otherwise. |
IsDriver(void)
|
bool
Returns true if this entity (node) is the driver for this transfer, false otherwise. |
Reset(void)
|
void
Sets all pointers to NULL, resets counters, etc. |
SetHandlers(BDXHandlers aHandlers)
|
void
Fungsi ini menetapkan pengendali pada objek BDXTransfer ini.
|
Shutdown(void)
|
void
Shuts down the current transfer, including closing any open ExchangeContext. |
Atribut publik
mAmInitiator
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mAmInitiator
mAmSender
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mAmSender
mAppState
void * nl::Weave::Profiles::BDX_Development::BDXTransfer::mAppState
mBlockCounter
uint32_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mBlockCounter
Nomor blok berikutnya yang akan menerima BlockQuery atau BlockACK untuk pengiriman (setelah transfer resmi dimulai).
Saat menerimanya, permintaan ini adalah BlockSend berikutnya yang diharapkan akan kami terima atau BlockQuery terbaru yang kami kirim (setelah transfer resmi dimulai dan kueri pertama dikirim).
mBytesSent
uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mBytesSent
mExchangeContext
ExchangeContext * nl::Weave::Profiles::BDX_Development::BDXTransfer::mExchangeContext
mFileDesignator
ReferencedString nl::Weave::Profiles::BDX_Development::BDXTransfer::mFileDesignator
file/blokir anggota data terkait TODO: hapus ini? atau haruskah kita menetapkan kontrak seperti apa dan bagaimana {i>string<i} ini akan digunakan? Secara khusus, apakah itu didukung oleh PacketBuffer? Jika demikian, gambar tersebut mungkin tidak akan bertahan di seluruh xfer karena akan membutuhkan pbuf
mFirstQuery
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mFirstQuery
mHandlers
BDXHandlers nl::Weave::Profiles::BDX_Development::BDXTransfer::mHandlers
mIsAccepted
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsAccepted
mIsCompletedSuccessfully
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsCompletedSuccessfully
mIsInitiated
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsInitiated
mIsWideRange
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsWideRange
mLength
uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mLength
mMaxBlockSize
uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mMaxBlockSize
mNext
WEAVE_ERROR(* nl::Weave::Profiles::BDX_Development::BDXTransfer::mNext)(BDXTransfer &)
mStartOffset
uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mStartOffset
mTransferMode
uint8_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mTransferMode
mVersion
uint8_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mVersion
Fungsi publik
DispatchErrorHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchErrorHandler( WEAVE_ERROR anErrorCode )
Jika pengendali error telah ditetapkan, panggil pengendali tersebut.
Jika tidak disetel, matikan juga transfer sebagai perilaku default.
Detail | |||
---|---|---|---|
Parameter |
|
DispatchGetBlockHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchGetBlockHandler( uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock )
Jika pengendali blok get telah ditetapkan, panggil pengendali tersebut.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
DispatchPutBlockHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchPutBlockHandler( uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock )
Jika pengendali blok put telah ditetapkan, panggil pengendali tersebut.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
DispatchReceiveAccept
WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchReceiveAccept( ReceiveAccept *aReceiveAcceptMsg )
Dispatcher cukup memeriksa apakah pengendali telah ditetapkan dan kemudian memanggilnya jika telah ditetapkan.
Jika pengendali penerimaan penerimaan telah ditetapkan, panggil pengendali tersebut.
Oleh karena itu, ini harus digunakan sebagai antarmuka publik untuk memanggil callback, yang tidak boleh disentuh langsung oleh aplikasi luar. Ada kemungkinan bahwa revisi BDXTransfer pada masa mendatang akan menggunakan objek delegasi, bukan menyimpan pointer individual ke setiap callback.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
nilai error
|
DispatchRejectHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchRejectHandler( StatusReport *aReport )
Jika pengendali penolakan telah ditetapkan, panggil pengendali tersebut.
Jika tidak disetel, matikan juga transfer sebagai perilaku default.
Detail | |||
---|---|---|---|
Parameter |
|
DispatchSendAccept
WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchSendAccept( SendAccept *aSendAcceptMsg )
Jika pengendali pengiriman penerimaan telah ditetapkan, panggil pengendali tersebut.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
nilai error
|
DispatchXferDoneHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferDoneHandler( void )
Jika pengendali transfer selesai telah ditetapkan, panggil pengendali tersebut.
Jika tidak disetel, matikan juga transfer sebagai perilaku default.
DispatchXferErrorHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferErrorHandler( StatusReport *aXferError )
Jika pengendali error transfer telah ditetapkan, panggil pengendali tersebut.
Jika tidak disetel, matikan juga transfer sebagai perilaku default.
Detail | |||
---|---|---|---|
Parameter |
|
GetDefaultFlags
uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::GetDefaultFlags( bool aExpectResponse )
Fungsi ini menampilkan tanda default yang akan dikirim bersama pesan.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Tanda yang akan dikirim
|
IsAsync
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::IsAsync( void )
Returns true if this transfer is asynchronous, false otherwise.
Detail | |
---|---|
Hasil |
true jika transfer tersebut asinkron.
|
IsDriver
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::IsDriver( void )
Returns true if this entity (node) is the driver for this transfer, false otherwise.
Detail | |
---|---|
Hasil |
true jika entitas ini adalah driver untuk transfer ini
|
Reset
void nl::Weave::Profiles::BDX_Development::BDXTransfer::Reset( void )
Sets all pointers to NULL, resets counters, etc.
Dipanggil saat dimatikan.
SetHandlers
void nl::Weave::Profiles::BDX_Development::BDXTransfer::SetHandlers( BDXHandlers aHandlers )
Fungsi ini menetapkan pengendali pada objek BDXTransfer ini.
Anda harus selalu menggunakan metode ini daripada mencoba menyetelnya secara manual karena implementasi yang mendasari cara penyimpanan pointer fungsi pengendali bukan merupakan bagian dari API publik.
Detail | |||
---|---|---|---|
Parameter |
|
Nonaktif
void nl::Weave::Profiles::BDX_Development::BDXTransfer::Shutdown( void )
Shuts down the current transfer, including closing any open ExchangeContext.
Gunakan kesempatan ini untuk mengosongkan resource apa pun yang terkait dengan transfer ini dan logika aplikasi Anda.