Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.
Tetap teratur dengan koleksi Simpan dan kategorikan konten berdasarkan preferensi Anda.

nl::Tenun::Profil::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. Keduanya 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 pemblokiran berikutnya yang akan kami terima BlockQuery atau BlokirACK saat mengirim (setelah transfer secara resmi dimulai).
mBytesSent
uint64_t
mExchangeContext
mFileDesignator
anggota data yang terkait file/block TODO: hapus ini? atau haruskah kita membuat kontrak tentang seperti apa bentuk string ini dan bagaimana penggunaannya? Secara khusus, apakah didukung oleh PacketBuffer? Jika demikian, mungkin tidak boleh bertahan untuk seluruh xfer karena mengambil 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 get block telah disetel, panggillah.
DispatchPutBlockHandler(uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock)
void
Jika pengendali put block telah disetel, panggillah.
DispatchReceiveAccept(ReceiveAccept *aReceiveAcceptMsg)
Petugas operator hanya memeriksa apakah penangan telah ditetapkan, lalu memanggilnya jika demikian.
DispatchRejectHandler(StatusReport *aReport)
void
Jika pengendali penolakan telah ditetapkan, panggil pengendali tersebut.
DispatchSendAccept(SendAccept *aSendAcceptMsg)
Jika pengendali terima 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 flag default untuk 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

mAmInisiator

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 pemblokiran berikutnya yang akan kami terima BlockQuery atau BlokirACK saat mengirim (setelah transfer secara resmi dimulai).

Saat menerima, ini adalah BlockSend berikutnya yang kami harapkan untuk diterima atau BlockQuery terbaru yang kami kirimkan (setelah transfer secara resmi dimulai dan kueri pertama dikirimkan).

mByteTerkirim

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 yang terkait file/block TODO: hapus ini? atau haruskah kita membuat kontrak tentang seperti apa bentuk string ini dan bagaimana penggunaannya? Secara khusus, apakah didukung oleh PacketBuffer? Jika demikian, mungkin tidak boleh bertahan untuk seluruh xfer karena mengambil pbuf

mFirstQuery

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mFirstQuery

mHandler

BDXHandlers nl::Weave::Profiles::BDX_Development::BDXTransfer::mHandlers

mDisetujui

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsAccepted

mIsSuccessBerhasil

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsCompletedSuccessfully

MMulai Dimulai

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsInitiated

MimWideRange

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsWideRange

mPanjang

uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mLength

mMaxBlockSize

uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mMaxBlockSize

Berikutnya

WEAVE_ERROR(* nl::Weave::Profiles::BDX_Development::BDXTransfer::mNext)(BDXTransfer &)

OffsetMulai

uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mStartOffset

Mode Transfer

uint8_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mTransferMode

Versi

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 ditetapkan, nonaktifkan juga transfer sebagai perilaku default.

Detail
Parameter
[in] anErrorCode
Kode error yang akan diproses

DispatchGetBlockHandler

void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchGetBlockHandler(
  uint64_t *aLength,
  uint8_t **aDataBlock,
  bool *aLastBlock
)

Jika pengendali get block telah disetel, panggillah.

Detail
Parameter
[in] aLength
Panjang blok
[in] aDataBlock
Pointer ke blok data
[in] aLastBlock
True jika ini adalah blok terakhir dalam transfer

DispatchPutBlockHandler

void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchPutBlockHandler(
  uint64_t aLength,
  uint8_t *aDataBlock,
  bool aLastBlock
)

Jika pengendali put block telah disetel, panggillah.

Detail
Parameter
[in] aLength
Panjang blok
[in] aDataBlock
Pointer ke blok data
[in] aLastBlock
True jika ini adalah blok terakhir dalam transfer

KirimTerimaTerima

WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchReceiveAccept(
  ReceiveAccept *aReceiveAcceptMsg
)

Petugas operator hanya memeriksa apakah penangan telah ditetapkan, lalu memanggilnya jika demikian.

Jika pengendali penerimaan penerimaan telah ditetapkan, panggil pengendali tersebut.

Oleh karena itu, metode ini harus digunakan sebagai antarmuka publik untuk memanggil callback yang tidak boleh disentuh langsung oleh aplikasi luar. Ada kemungkinan revisi BDXTransfer berikutnya akan menggunakan objek delegasi, bukan menyimpan masing-masing pointer ke setiap callback.

Detail
Parameter
[in] aReceiveAcceptMsg
Pesan ReceiveAccept akan diproses
Menampilkan
nilai error

DispatchTolakHandler

void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchRejectHandler(
  StatusReport *aReport
)

Jika pengendali penolakan telah ditetapkan, panggil pengendali tersebut.

Jika tidak ditetapkan, nonaktifkan juga transfer sebagai perilaku default.

Detail
Parameter
[in] aReport
Pesan StatusReport yang akan diproses

KirimKirimTerima

WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchSendAccept(
  SendAccept *aSendAcceptMsg
)

Jika pengendali terima penerimaan telah ditetapkan, panggil pengendali tersebut.

Detail
Parameter
[in] aSendAcceptMsg
Pesan SendAccept yang akan diproses
Menampilkan
nilai error

DispatchXferDoneHandler

void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferDoneHandler(
  void
)

Jika pengendali transfer selesai telah ditetapkan, panggil pengendali tersebut.

Jika tidak ditetapkan, nonaktifkan 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 ditetapkan, nonaktifkan juga transfer sebagai perilaku default.

Detail
Parameter
[in] aXferError
Laporan status error untuk diproses

GetDefaultFlags

uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::GetDefaultFlags(
  bool aExpectResponse
)

Fungsi ini menampilkan flag default untuk dikirim bersama pesan.

Detail
Parameter
[in] aExpectResponse
Jika kami mengharapkan respons untuk pesan ini
Menampilkan
Flag yang akan dikirim

IsAsync

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::IsAsync(
  void
)

 Returns true if this transfer is asynchronous, false otherwise.

Detail
Menampilkan
true jika transfer bersifat asinkron.

Pengemudi

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::IsDriver(
  void
)

 Returns true if this entity (node) is the driver for this transfer, false otherwise.

Detail
Menampilkan
true jika entity ini adalah pendorong transfer ini

Reset

void nl::Weave::Profiles::BDX_Development::BDXTransfer::Reset(
  void
)

 Sets all pointers to NULL, resets counters, etc.

Dipanggil saat dimatikan.

SetHandler

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 dasar cara pointer fungsi pengendali disimpan bukan bagian dari API publik.

Detail
Parameter
[in] aHandlers
Struktur pengendali callback yang akan dipanggil

Mematikan

void nl::Weave::Profiles::BDX_Development::BDXTransfer::Shutdown(
  void
)

 Shuts down the current transfer, including closing any open ExchangeContext.

Gunakan kesempatan ini untuk membebaskan resource apa pun yang terkait dengan transfer ini dan logika aplikasi Anda.