Google is committed to advancing racial equity for Black communities. See how.

এনএল :: তাঁত :: প্রোফাইল :: বিডিএক্স_ ডেভেলপমেন্ট :: বিডিএক্স ট্রান্সফার

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

এই কাঠামোটিতে একটি সক্রিয় বিডিএক্স স্থানান্তর উপস্থাপন করে এমন ডেটা সদস্য রয়েছে।

সারসংক্ষেপ

প্রোটোকল স্থিতি বজায় রাখতে এই বিষয়গুলি বিডিএক্সপ্রোটোকল ব্যবহার করেন। এগুলি বিডিএক্স সার্ভার দ্বারা পরিচালিত হয়, যা সংযোগগুলি এবং এক্সচেঞ্জকন্টেক্সটস পরিচালনা সহ নতুন স্থানান্তর তৈরি এবং প্রারম্ভিককরণ পরিচালনা করে।

জনসাধারণের গুণাবলী

mAmInitiator
bool
mAmSender
bool
mAppState
void *
mBlockCounter
uint32_t
পরবর্তী ব্লক সংখ্যা আমরা একটি গ্রহণ করার আশা BlockQuery যখন পাঠানোর (একবার ট্রান্সফার আনুষ্ঠানিকভাবে শুরু হয়েছে) বা BlockACK।
mBytesSent
uint64_t
mExchangeContext
mFileDesignator
ফাইল / ব্লক সম্পর্কিত ডেটা সদস্যদের টোডো: এটিকে সরিয়ে দেবেন? বা আমাদের কেবল এই স্ট্রিংটি দেখতে কেমন হবে এবং এটি কীভাবে ব্যবহৃত হবে তার একটি চুক্তি স্থাপন করা উচিত? বিশেষত, এটি একটি প্যাকেটবাফার দ্বারা সমর্থন করা হয়? যদি তা হয় তবে এটি সম্ভবত পুরো এক্সফারটির সাথে থাকা উচিত নয় কারণ এটি কোনও পিবিউফ গ্রহণ করে
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.

জনসাধারণের গুণাবলী

এমএমিনিটিটার

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

এমব্লককাউন্টার

uint32_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mBlockCounter

পরবর্তী ব্লক সংখ্যা আমরা একটি গ্রহণ করার আশা BlockQuery যখন পাঠানোর (একবার ট্রান্সফার আনুষ্ঠানিকভাবে শুরু হয়েছে) বা BlockACK।

যখন গ্রহণ, এটা পরবর্তী BlockSend আমরা গ্রহণ আশা বা সর্বশেষ BlockQuery আমাদের পাঠানো (পরে স্থানান্তর আনুষ্ঠানিকভাবে শুরু হয়েছে এবং প্রথম ক্যোয়ারী পাঠানো হয় যে)।

এমবাইটসেন্ট

uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mBytesSent

এমএক্সচেঞ্জকন্টেক্সট

ExchangeContext * nl::Weave::Profiles::BDX_Development::BDXTransfer::mExchangeContext

mFileDesignator

ReferencedString nl::Weave::Profiles::BDX_Development::BDXTransfer::mFileDesignator

ফাইল / ব্লক সম্পর্কিত ডেটা সদস্যদের টোডো: এটিকে সরিয়ে দেবেন? বা আমাদের কেবল এই স্ট্রিংটি দেখতে কেমন হবে এবং এটি কীভাবে ব্যবহৃত হবে তার একটি চুক্তি স্থাপন করা উচিত? বিশেষত, এটি একটি প্যাকেটবাফার দ্বারা সমর্থন করা হয়? যদি তা হয় তবে এটি সম্ভবত পুরো এক্সফারটির সাথে থাকা উচিত নয় কারণ এটি কোনও পিবিউফ গ্রহণ করে

mFirstQuery

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

এমহ্যান্ডার্স

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

mIsAcepted

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

mIs widesRange

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

mLength

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

এমম্যাক্সব্লকসিজ

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

পাবলিক ফাংশন

ডিসপ্যাচএরর হ্যান্ডলার

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

যদি ত্রুটি হ্যান্ডলারটি সেট করা থাকে তবে এটিকে কল করুন।

যদি সেট না করা থাকে তবে ডিফল্ট আচরণ হিসাবে স্থানান্তরটি বন্ধ করে দিন।

বিশদ
পরামিতি
[in] anErrorCode
প্রক্রিয়া করার জন্য ত্রুটি কোড

ডিসপ্যাচগেটব্লকহ্যান্ডলার

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

যদি গেট ব্লক হ্যান্ডলারটি সেট করা থাকে তবে কল করুন।

বিশদ
পরামিতি
[in] aLength
ব্লকের দৈর্ঘ্য
[in] aDataBlock
ডেটা ব্লকে পয়েন্টার
[in] aLastBlock
এটি যদি স্থানান্তরের শেষ ব্লক হয় True

ডিসপ্যাচপুটব্লকহ্যান্ডলার

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

যদি পট ব্লক হ্যান্ডলারটি সেট করা থাকে তবে কল করুন।

বিশদ
পরামিতি
[in] aLength
ব্লকের দৈর্ঘ্য
[in] aDataBlock
ডেটা ব্লকে পয়েন্টার
[in] aLastBlock
এটি যদি স্থানান্তরের শেষ ব্লক হয় True

ডিসপ্যাচ রিসিভঅ্যাকসেপ্ট

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

প্রেরণকারীরা কেবল কোনও হ্যান্ডলার সেট করা হয়েছে কিনা তা পরীক্ষা করে দেখুন এবং যদি তা থাকে তবে তা কল করুন।

যদি গ্রহণের গ্রহণযোগ্য হ্যান্ডলারটি সেট করা থাকে তবে এটিকে কল করুন।

সুতরাং, এগুলি কলব্যাক কল করার জন্য সর্বজনীন ইন্টারফেস হিসাবে ব্যবহার করা উচিত, যা বাইরের অ্যাপ্লিকেশনগুলির মাধ্যমে সরাসরি স্পর্শ করা উচিত নয়। এটা সম্ভব যে একটি ভবিষ্যৎ পুনর্বিবেচনা BDXTransfer callbacks প্রত্যেকটি পৃথক পয়েন্টার জমা করার চেয়ে বরং একটি প্রতিনিধি বস্তুর ব্যবহার করবে।

বিশদ
পরামিতি
[in] aReceiveAcceptMsg
ReceiveAccept বার্তা প্রক্রিয়া হওয়ার
ফিরে আসে
একটি ত্রুটি মান

ডিসপ্যাচআরেজেক্টহ্যান্ডলার

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
SendAccept বার্তা প্রক্রিয়া হওয়ার
ফিরে আসে
একটি ত্রুটি মান

ডিসপ্যাচএক্সফারডোনহ্যান্ডলার

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

স্থানান্তর সম্পন্ন হ্যান্ডলারটি সেট করা থাকলে, কল করুন।

যদি সেট না করা থাকে তবে ডিফল্ট আচরণ হিসাবে স্থানান্তরটি বন্ধ করে দিন।

DispatchXferErrorHandler and

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

যদি স্থানান্তর ত্রুটি হ্যান্ডলারটি সেট করা থাকে তবে এটিকে কল করুন।

যদি সেট না করা থাকে তবে ডিফল্ট আচরণ হিসাবে স্থানান্তরটি বন্ধ করে দিন।

বিশদ
পরামিতি
[in] aXferError
প্রক্রিয়া করার জন্য একটি ত্রুটির স্থিতির প্রতিবেদন

গেটডিফল্টফ্ল্যাগস

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 অবজেক্ট।

হ্যান্ডলার ফাংশন পয়েন্টার কীভাবে সংরক্ষণ করা হয় তা জনসাধারণের API এর অংশ নয় কীভাবে তার ম্যানুয়ালি সেট করার চেষ্টা করার চেয়ে আপনার সর্বদা এই পদ্ধতিটি ব্যবহার করা উচিত।

বিশদ
পরামিতি
[in] aHandlers
কলব্যাক হ্যান্ডলারগুলির কাঠামো কল করা উচিত

শাটডাউন

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

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

এই স্থানান্তর এবং আপনার অ্যাপ্লিকেশন যুক্তির সাথে যুক্ত কোনও সংস্থানকে মুক্ত করার জন্য এই সুযোগটি ব্যবহার করুন।