nl:: बुना::प्रोफ़ाइलें::BDX_डेवलपमेंट::BDXट्रांसफ़र

#include <src/lib/profiles/bulk-data-transfer/Development/BDXTransferState.h>

इस स्ट्रक्चर में ऐसे डेटा सदस्य हैं जो किसी चालू BDX ट्रांसफ़र को दिखाते हैं.

खास जानकारी

इन ऑब्जेक्ट का इस्तेमाल BdxProtocol ने प्रोटोकॉल की स्थिति को बनाए रखने के लिए किया है. उन्हें BdxServer से मैनेज किया जाता है. यह नए ट्रांसफ़र बनाने और उन्हें शुरू करने का काम संभालता है. इनमें कनेक्शन और ExchangeContexts को मैनेज करना भी शामिल है.

सार्वजनिक विशेषताएं

mAmInitiator
bool
mAmSender
bool
mAppState
void *
mBlockCounter
uint32_t
अगला ब्लॉक नंबर BlockQuery या BlockACK पाने की उम्मीद करता है. ऐसा तब होता है, जब नंबर ट्रांसफ़र होते समय उसे ट्रांसफ़र कर दिया जाता है.
mBytesSent
uint64_t
mExchangeContext
mFileDesignator
फ़ाइल/ब्लॉक किए गए डेटा के सदस्यों के लिए काम की सूची: इसे हटाएं? या हम सिर्फ़ यह तय करें कि यह स्ट्रिंग कैसी दिखेगी और इसका इस्तेमाल कैसे किया जाएगा? दरअसल, क्या यह PacketBuffer पर आधारित है? अगर ऐसा है, तो हो सकता है कि यह पूरे एक्सफ़र के लिए भी न बने रहे क्योंकि यह किसी pufff का इस्तेमाल करता है
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
यह फ़ंक्शन BDXtransfer ऑब्जेक्ट पर हैंडलर सेट करता है.
Shutdown(void)
void
 Shuts down the current transfer, including closing any open ExchangeContext.

सार्वजनिक विशेषताएं

mAmInitiator

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 को भी भेज सकते हैं जो हमने भेजा है (ट्रांसफ़र शुरू होने के बाद और पहली क्वेरी भेजने के बाद).

भेजा गया

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

फ़ाइल/ब्लॉक किए गए डेटा के सदस्यों के लिए काम की सूची: इसे हटाएं? या हम सिर्फ़ यह तय करें कि यह स्ट्रिंग कैसी दिखेगी और इसका इस्तेमाल कैसे किया जाएगा? दरअसल, क्या यह PacketBuffer पर आधारित है? अगर ऐसा है, तो हो सकता है कि यह पूरे एक्सफ़र के लिए भी न बने रहे क्योंकि यह किसी pufff का इस्तेमाल करता है

mफ़र्स्ट क्वेरी

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

mहैंडलर

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

mIs मंज़ूर किए गए

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

mIscomplete सफलतापूर्वक

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

mMaxब्लॉक साइज़

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

mट्रांसफ़रMode

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

mVersion

uint8_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mVersion

सार्वजनिक फ़ंक्शन

डिस्पैच गड़बड़ी हैंडलर

void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchErrorHandler(
  WEAVE_ERROR anErrorCode
)

अगर गड़बड़ी हैंडलर को सेट कर दिया गया है, तो उसे कॉल करें.

इस नीति को सेट न करने पर, डिफ़ॉल्ट व्यवहार के तौर पर ट्रांसफ़र की सुविधा बंद करें.

ब्यौरा
पैरामीटर
[in] anErrorCode
प्रोसेस करने के लिए गड़बड़ी कोड

DispatchGetBlockHandler

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

अगर 'ब्लॉक हैंडलर' सेट कर दिया गया है, तो उसे कॉल करें.

ब्यौरा
पैरामीटर
[in] aLength
ब्लॉक करने की अवधि
[in] aDataBlock
डेटा ब्लॉक की ओर इशारा करने वाला
[in] aLastBlock
सही है अगर ट्रांसफ़र का यह आखिरी ब्लॉक है

DispatchPutBlockHandler

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

अगर रखने का ब्लॉक सेट किया गया है, तो उसे कॉल करें.

ब्यौरा
पैरामीटर
[in] aLength
ब्लॉक करने की अवधि
[in] aDataBlock
डेटा ब्लॉक की ओर इशारा करने वाला
[in] aLastBlock
सही है अगर ट्रांसफ़र का यह आखिरी ब्लॉक है

डिस्पैच पाने की सुविधा चालू है

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

डिस्पैचर बस जांचते हैं कि हैंडलर सेट है या नहीं. अगर है, तो कॉल करें.

अगर पाने वाले हैंडलर को सेट किया गया है, तो उसे कॉल करें.

इसलिए, इनका इस्तेमाल कॉलबैक के लिए सार्वजनिक इंटरफ़ेस के तौर पर किया जाना चाहिए. इन्हें बाहरी ऐप्लिकेशन के ज़रिए सीधे टच नहीं किया जाना चाहिए. ऐसा हो सकता है कि BDXtransfer का आने वाला वर्शन, हर कॉलबैक में अलग-अलग पॉइंटर को स्टोर करने के बजाय, डेलिगेट ऑब्जेक्ट का इस्तेमाल करे.

ब्यौरा
पैरामीटर
[in] aReceiveAcceptMsg
प्रोसेस करने के लिए, स्वीकार करें मैसेज पाएं
लौटाए गए सामान
एक गड़बड़ी मान

डिस्पैचअस्वीकारहैंडलर

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

अगर अस्वीकार करने वाला हैंडलर सेट कर दिया गया है, तो उसे कॉल करें.

इस नीति को सेट न करने पर, डिफ़ॉल्ट व्यवहार के तौर पर ट्रांसफ़र की सुविधा बंद करें.

ब्यौरा
पैरामीटर
[in] aReport
स्थिति रिपोर्ट से जुड़ा मैसेज प्रोसेस किया जाएगा

भेजे जाने की सूचना भेजें

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

अगर न्योता भेजने वाला हैंडलर सेट है, तो उसे कॉल करें.

ब्यौरा
पैरामीटर
[in] aSendAcceptMsg
प्रोसेस करने के लिए, भेजें स्वीकार करें मैसेज
लौटाए गए सामान
एक गड़बड़ी मान

DispatchXferDoneHandler

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

अगर ट्रांसफ़र किया गया हैंडलर सेट कर दिया गया है, तो उसे कॉल करें.

इस नीति को सेट न करने पर, डिफ़ॉल्ट व्यवहार के तौर पर ट्रांसफ़र की सुविधा बंद करें.

DispatchXferErrorHandler

void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferErrorHandler(
  StatusReport *aXferError
)

अगर ट्रांसफ़र करने से जुड़ा गड़बड़ी हैंडलर सेट कर दिया गया है, तो उसे कॉल करें.

इस नीति को सेट न करने पर, डिफ़ॉल्ट व्यवहार के तौर पर ट्रांसफ़र की सुविधा बंद करें.

ब्यौरा
पैरामीटर
[in] aXferError
प्रोसेस करने के लिए मिली गड़बड़ी की स्थिति की रिपोर्ट

GetDefaultFlags

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

यह फ़ंक्शन मैसेज के साथ भेजे जाने वाले डिफ़ॉल्ट फ़्लैग दिखाता है.

ब्यौरा
पैरामीटर
[in] aExpectResponse
अगर हम इस मैसेज का जवाब देना चाहते हैं
लौटाए गए सामान
भेजे जाने वाले फ़्लैग

आईएसएसिंक

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

 Returns true if this transfer is asynchronous, false otherwise.

ब्यौरा
लौटाए गए सामान
सही है, अगर ट्रांसफ़र एसिंक्रोनस है.

इस् ड्राइव

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
)

यह फ़ंक्शन BDXtransfer ऑब्जेक्ट पर हैंडलर सेट करता है.

आपको मैन्युअल रूप से इस तरीके का इस्तेमाल करने के बजाय, इस तरीके का इस्तेमाल हमेशा करना चाहिए. ऐसा इसलिए, क्योंकि हैंडलर फ़ंक्शन पॉइंटर कैसे सेव किए जाते हैं, यह सार्वजनिक एपीआई का हिस्सा नहीं है.

ब्यौरा
पैरामीटर
[in] aHandlers
कॉलबैक हैंडलर को शामिल करने के लिए बनाया गया तरीका

शटडाउन

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

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

इस मौके का इस्तेमाल, इस ट्रांसफ़र और ऐप्लिकेशन लॉजिक से जुड़े सभी संसाधन खाली करने के लिए करें.