nl:: بافت:: پروفایل ها:: BDX_Development:: BDXTransfer
#include <src/lib/profiles/bulk-data-transfer/Development/BDXTransferState.h>
این ساختار شامل اعضای داده ای است که انتقال فعال BDX را نشان می دهد.
خلاصه
این اشیاء توسط BdxProtocol برای حفظ وضعیت پروتکل استفاده می شوند. آنها توسط BdxServer مدیریت میشوند که ایجاد و مقداردهی اولیه انتقالهای جدید، از جمله مدیریت Connections و ExchangeContexts را مدیریت میکند.
صفات عمومی | |
---|---|
mAmInitiator | bool |
mAmSender | bool |
mAppState | void * |
mBlockCounter | uint32_t شماره بلوک بعدی که انتظار داریم هنگام ارسال یک BlockQuery یا BlockACK دریافت کنیم (پس از شروع رسمی انتقال). |
mBytesSent | uint64_t |
mExchangeContext | |
mFileDesignator | فایل/مسدود کردن اعضای داده مرتبط TODO: حذف شود؟ یا فقط باید قراردادی ببندیم که این رشته ممکن است چگونه باشد و چگونه از آن استفاده شود؟ به طور خاص، آیا توسط PacketBuffer پشتیبانی می شود؟ اگر چنین است، احتمالاً نباید برای کل xfer بچسبد زیرا یک pbuf را اشغال می کند |
mFirstQuery | bool |
mHandlers | |
mIsAccepted | bool |
mIsCompletedSuccessfully | bool |
mIsInitiated | bool |
mIsWideRange | bool |
mLength | uint64_t |
mMaxBlockSize | uint16_t |
mNext )(BDXTransfer &) | WEAVE_ERROR (* |
mStartOffset | uint64_t |
mTransferMode | uint8_t |
mVersion | uint8_t |
توابع عمومی | |
---|---|
DispatchErrorHandler ( WEAVE_ERROR anErrorCode) | void اگر کنترل کننده خطا تنظیم شده است، با آن تماس بگیرید. |
DispatchGetBlockHandler (uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock) | void اگر کنترل کننده بلوک دریافت تنظیم شده است، با آن تماس بگیرید. |
DispatchPutBlockHandler (uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock) | void اگر کنترل کننده بلوک put تنظیم شده است، با آن تماس بگیرید. |
DispatchReceiveAccept ( ReceiveAccept *aReceiveAcceptMsg) | توزیع کنندگان به سادگی بررسی می کنند که آیا کنترل کننده تنظیم شده است یا خیر و در صورت وجود آن را فراخوانی می کنند. |
DispatchRejectHandler ( StatusReport *aReport) | void اگر کنترل کننده رد تنظیم شده است، با آن تماس بگیرید. |
DispatchSendAccept ( SendAccept *aSendAcceptMsg) | اگر کنترل کننده پذیرش ارسال تنظیم شده است، با آن تماس بگیرید. |
DispatchXferDoneHandler (void) | void اگر کنترل کننده انتقال انجام شده تنظیم شده است، با آن تماس بگیرید. |
DispatchXferErrorHandler ( StatusReport *aXferError) | void اگر کنترل کننده خطای انتقال تنظیم شده است، با آن تماس بگیرید. |
GetDefaultFlags (bool aExpectResponse) | uint16_t این تابع پرچمهای پیشفرض را برای ارسال با پیام برمیگرداند. |
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 این تابع کنترل کننده ها را روی این شی BDXTransfer تنظیم می کند. |
Shutdown (void) | void Shuts down the current transfer, including closing any open ExchangeContext. |
صفات عمومی
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
شماره بلوک بعدی که انتظار داریم هنگام ارسال یک BlockQuery یا BlockACK دریافت کنیم (پس از شروع رسمی انتقال).
هنگام دریافت، BlockSend بعدی است که انتظار داریم دریافت کنیم یا آخرین BlockQuery است که ارسال کردیم (پس از شروع رسمی انتقال و اولین درخواست ارسال شده).
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
فایل/مسدود کردن اعضای داده مرتبط TODO: حذف شود؟ یا فقط باید قراردادی ببندیم که این رشته ممکن است چگونه باشد و چگونه از آن استفاده شود؟ به طور خاص، آیا توسط PacketBuffer پشتیبانی می شود؟ اگر چنین است، احتمالاً نباید برای کل xfer بچسبد زیرا یک 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
mIsCompleted با موفقیت
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsCompletedSuccessfully
من آغاز شده است
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsInitiated
mIsWideRange
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsWideRange
میلی متر طول
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
توابع عمومی
DispatchError Handler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchErrorHandler( WEAVE_ERROR anErrorCode )
اگر کنترل کننده خطا تنظیم شده است، با آن تماس بگیرید.
اگر تنظیم نشد، انتقال را نیز به عنوان یک رفتار پیشفرض خاموش کنید.
جزئیات | |||
---|---|---|---|
پارامترها |
|
DispatchGetBlockHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchGetBlockHandler( uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock )
اگر کنترل کننده بلوک دریافت تنظیم شده است، با آن تماس بگیرید.
جزئیات | |||||||
---|---|---|---|---|---|---|---|
پارامترها |
|
DispatchPutBlockHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchPutBlockHandler( uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock )
اگر کنترل کننده بلوک put تنظیم شده است، با آن تماس بگیرید.
جزئیات | |||||||
---|---|---|---|---|---|---|---|
پارامترها |
|
DispatchReceiveAccept
WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchReceiveAccept( ReceiveAccept *aReceiveAcceptMsg )
توزیع کنندگان به سادگی بررسی می کنند که آیا کنترل کننده تنظیم شده است یا خیر و در صورت وجود آن را فراخوانی می کنند.
اگر کنترل کننده دریافت دریافت تنظیم شده است، با آن تماس بگیرید.
بنابراین، اینها باید به عنوان رابط عمومی برای تماس های برگشتی استفاده شوند، که هرگز نباید مستقیماً توسط برنامه های کاربردی خارجی لمس شوند. این امکان وجود دارد که در ویرایش بعدی BDXTransfer به جای ذخیره نشانگرهای جداگانه برای هر یک از تماسهای برگشتی، از یک شی نماینده استفاده شود.
جزئیات | |||
---|---|---|---|
پارامترها |
| ||
برمی گرداند | یک مقدار خطا |
DispatchRejectHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchRejectHandler( StatusReport *aReport )
اگر کنترل کننده رد تنظیم شده است، با آن تماس بگیرید.
اگر تنظیم نشد، انتقال را نیز به عنوان یک رفتار پیشفرض خاموش کنید.
جزئیات | |||
---|---|---|---|
پارامترها |
|
DispatchSendAccept
WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchSendAccept( SendAccept *aSendAcceptMsg )
اگر کنترل کننده پذیرش ارسال تنظیم شده است، با آن تماس بگیرید.
جزئیات | |||
---|---|---|---|
پارامترها |
| ||
برمی گرداند | یک مقدار خطا |
DispatchXferDoneHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferDoneHandler( void )
اگر کنترل کننده انتقال انجام شده تنظیم شده است، با آن تماس بگیرید.
اگر تنظیم نشد، انتقال را نیز به عنوان یک رفتار پیشفرض خاموش کنید.
DispatchXferErrorHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferErrorHandler( StatusReport *aXferError )
اگر کنترل کننده خطای انتقال تنظیم شده است، با آن تماس بگیرید.
اگر تنظیم نشد، انتقال را نیز به عنوان یک رفتار پیشفرض خاموش کنید.
جزئیات | |||
---|---|---|---|
پارامترها |
|
GetDefaultFlags
uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::GetDefaultFlags( bool aExpectResponse )
این تابع پرچمهای پیشفرض را برای ارسال با پیام برمیگرداند.
جزئیات | |||
---|---|---|---|
پارامترها |
| ||
برمی گرداند | پرچم های ارسالی |
IsAsync
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::IsAsync( void )
Returns true if this transfer is asynchronous, false otherwise.
جزئیات | |
---|---|
برمی گرداند | اگر انتقال ناهمزمان باشد درست است. |
IsDriver
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::IsDriver( void )
Returns true if this entity (node) is the driver for this transfer, false otherwise.
جزئیات | |
---|---|
برمی گرداند | درست است اگر این موجودیت درایور این انتقال باشد |
بازنشانی کنید
void nl::Weave::Profiles::BDX_Development::BDXTransfer::Reset( void )
Sets all pointers to NULL, resets counters, etc.
وقتی خاموش شد تماس گرفت.
SetHandlers
void nl::Weave::Profiles::BDX_Development::BDXTransfer::SetHandlers( BDXHandlers aHandlers )
این تابع کنترل کننده ها را روی این شی BDXTransfer تنظیم می کند.
همیشه باید از این روش استفاده کنید نه اینکه بخواهید آنها را به صورت دستی تنظیم کنید، زیرا اجرای اساسی نحوه ذخیره نشانگرهای تابع handler بخشی از API عمومی نیست.
جزئیات | |||
---|---|---|---|
پارامترها |
|
خاموش شدن
void nl::Weave::Profiles::BDX_Development::BDXTransfer::Shutdown( void )
Shuts down the current transfer, including closing any open ExchangeContext.
از این فرصت برای آزاد کردن منابع مرتبط با این انتقال و منطق برنامه خود استفاده کنید.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. The OPENTHREAD and related marks are trademarks of the Thread Group and are used under license.
تاریخ آخرین بهروزرسانی 2024-11-13 بهوقت ساعت هماهنگ جهانی.