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 menjaga status protokol. Mereka dikelola oleh BdxServer, yang menangani pembuatan dan inisialisasi transfer baru, termasuk mengelola Connections dan ExchangeContexts.
Atribut publik |
|
---|---|
mAmInitiator
|
bool
|
mAmSender
|
bool
|
mAppState
|
void *
|
mBlockCounter
|
uint32_t
Nomor blok berikutnya yang kami harapkan akan menerima BlockQuery atau BlockACK saat mengirim (setelah transfer secara resmi dimulai).
|
mBytesSent
|
uint64_t
|
mExchangeContext
|
|
mFileDesignator
|
anggota data terkait file/blok TODO: hapus ini? atau haruskah kita membuat kontrak mengenai seperti apa string ini dan bagaimana string tersebut akan digunakan? Secara khusus, apakah ini didukung oleh PacketBuffer? Jika demikian, mungkin tidak boleh bertahan di seluruh xfer karena membutuhkan buf
|
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)
|
Petugas operator hanya memeriksa apakah pengendali telah ditetapkan, lalu memanggilnya jika demikian.
|
DispatchRejectHandler(StatusReport *aReport)
|
void
Jika pengendali penolakan telah ditetapkan, panggil pengendali tersebut.
|
DispatchSendAccept(SendAccept *aSendAcceptMsg)
|
Jika pengendali pengiriman terima 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 error transfer 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 kami harapkan akan menerima BlockQuery atau BlockACK saat mengirim (setelah transfer secara resmi dimulai).
Saat menerima, ini adalah BlockSend berikutnya yang kami harapkan atau BlockQuery terbaru yang kami kirimkan (setelah transfer secara resmi dimulai dan kueri pertama yang 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
anggota data terkait file/blok TODO: hapus ini? atau haruskah kita membuat kontrak mengenai seperti apa string ini dan bagaimana string tersebut akan digunakan? Secara khusus, apakah ini didukung oleh PacketBuffer? Jika demikian, mungkin tidak boleh bertahan di seluruh xfer karena membutuhkan buf
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 )
Petugas operator hanya memeriksa apakah pengendali telah ditetapkan, lalu memanggilnya jika demikian.
Jika pengendali terima telah ditetapkan, panggil pengendali tersebut.
Oleh karena itu, hal ini harus digunakan sebagai antarmuka publik untuk memanggil callback, yang tidak boleh disentuh langsung oleh aplikasi luar. Ada kemungkinan bahwa revisi mendatang BDXTransfer akan menggunakan objek delegasi, bukan menyimpan masing-masing pointer 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 terima 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 error transfer 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 (benar) 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 menetapkannya secara manual karena implementasi dasar dari cara pointer fungsi pengendali disimpan bukanlah 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 peluang ini untuk membebaskan resource apa pun yang terkait dengan transfer ini dan logika aplikasi Anda.