nl:: Weave:: الملفات الشخصية:: BDX_تطوير التطبيقات:: نقل BDX
#include <src/lib/profiles/bulk-data-transfer/Development/BDXTransferState.h>
تحتوي هذه البنية على أعضاء بيانات يمثلون نقل BDX نشطًا.
الملخّص
وتستخدم BdxProtocol هذه العناصر للحفاظ على حالة البروتوكول. وتتم إدارتها من خلال خادم BdxServer، الذي يعالج إنشاء عمليات نقل جديدة وإعدادها، بما في ذلك إدارة الاتصالات وسياقات Exchange.
السمات العامة |
|
---|---|
mAmInitiator
|
bool
|
mAmSender
|
bool
|
mAppState
|
void *
|
mBlockCounter
|
uint32_t
رقم الحظر التالي الذي نتوقّع أن يتلقّاه BlockQuery أو BlockACK عند إرساله (بعد بدء عملية النقل رسميًا).
|
mBytesSent
|
uint64_t
|
mExchangeContext
|
|
mFileDesignator
|
الملفات/عناصر البيانات ذات الصلة المتعلقة بالمهام: هل تريد إزالة ذلك؟ أم يجب علينا إنشاء عقد يوضّح الشكل الذي ستظهر به هذه السلسلة وكيف سيتم استخدامها؟ على وجه التحديد، هل بدعم من PacketBuffer؟ إذا كان الأمر كذلك، من المفترض أن لا يلتزِم الدبّوس بهذا الشكل حتى يستهلك حافزًا كبيرًا.
|
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
|
وظائف عامة |
|
---|---|
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
إذا تم ضبط معالج وضع القوالب، عليك استدعاءه.
|
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
تضبط هذه الدالة المعالجات على كائن BDXTransport هذا.
|
Shutdown(void)
|
void
Shuts down the current transfer, including closing any open ExchangeContext. |
السمات العامة
بادئ التشغيل
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mAmInitiator
مراسِل
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
سياق mExchange
ExchangeContext * nl::Weave::Profiles::BDX_Development::BDXTransfer::mExchangeContext
mFileDesignator
ReferencedString nl::Weave::Profiles::BDX_Development::BDXTransfer::mFileDesignator
الملفات/عناصر البيانات ذات الصلة المتعلقة بالمهام: هل تريد إزالة ذلك؟ أم يجب علينا إنشاء عقد يوضّح الشكل الذي ستظهر به هذه السلسلة وكيف سيتم استخدامها؟ على وجه التحديد، هل بدعم من PacketBuffer؟ إذا كان الأمر كذلك، من المفترض أن لا يلتزِم الدبّوس بهذا الشكل حتى يستهلك حافزًا كبيرًا.
طلب بحث mFirst
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mFirstQuery
معالجات mHandlers
BDXHandlers nl::Weave::Profiles::BDX_Development::BDXTransfer::mHandlers
mIs مقبول
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsAccepted
mIsاكتمال بنجاح
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsCompletedSuccessfully
تم بدء MI
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
الحد الأقصى للحجم
uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mMaxBlockSize
التالي
WEAVE_ERROR(* nl::Weave::Profiles::BDX_Development::BDXTransfer::mNext)(BDXTransfer &)
mStartoffset
uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mStartOffset
وضع النقل
uint8_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mTransferMode
إصدار mVersion
uint8_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mVersion
وظائف عامة
DispatchErrorHandler
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 )
وفي حال ضبط معالج الحصول على حظر، عليك استدعاءه.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المعلَمات |
|
DispatchPlaceBlockHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchPutBlockHandler( uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock )
إذا تم ضبط معالج وضع القوالب، عليك استدعاءه.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المعلَمات |
|
إرسال البريد المستلَم
WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchReceiveAccept( ReceiveAccept *aReceiveAcceptMsg )
يتحقّق المرسِلون مما إذا كان قد تم إعداد المعالج ثم يتصل به في حال توفّره.
إذا تم ضبط معالج قبول الاستلام، يمكنك الاتصال به.
ولذلك، يجب استخدام هذه البيانات كواجهة عامة للاتصال باستدعاءات، والتي يجب ألا يتم لمسها مباشرةً من خلال تطبيقات خارجية. من المحتمل أن تستخدم مراجعة مستقبلية لـ BDXTransport كائن مفوَّض بدلاً من تخزين مؤشرات فردية لكل استدعاء.
التفاصيل | |||
---|---|---|---|
المعلَمات |
|
||
المرتجعات |
قيمة خطأ
|
معالج رفض الإرسال
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchRejectHandler( StatusReport *aReport )
إذا تم إعداد معالج الرفض، يمكنك الاتصال به.
في حال عدم ضبط هذه السياسة، عليك أيضًا إيقاف عملية النقل كسلوك تلقائي.
التفاصيل | |||
---|---|---|---|
المعلَمات |
|
إرسال البريد المرسَل
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.
التفاصيل | |
---|---|
المرتجعات |
صحيح إذا كانت عملية النقل غير متزامنة.
|
برنامج DriveDriver
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.
تم إجراء مكالمة عند إيقاف التشغيل.
معالجات الضبط
void nl::Weave::Profiles::BDX_Development::BDXTransfer::SetHandlers( BDXHandlers aHandlers )
تضبط هذه الدالة المعالجات على كائن BDXTransport هذا.
عليك دائمًا استخدام هذه الطريقة بدلاً من محاولة ضبطها يدويًا لأن التنفيذ الأساسي لكيفية تخزين مؤشرات وظائف المعالج ليس جزءًا من واجهة برمجة التطبيقات العامة.
التفاصيل | |||
---|---|---|---|
المعلَمات |
|
إيقاف التشغيل
void nl::Weave::Profiles::BDX_Development::BDXTransfer::Shutdown( void )
Shuts down the current transfer, including closing any open ExchangeContext.
يمكنك الاستفادة من هذه الفرصة لإخلاء أي موارد مرتبطة بعملية النقل هذه ومنطق تطبيقك.