nl::Weave::Profiles::BDX_Development::BdxNode

สรุป

ผู้ผลิตและผู้ทำลาย

BdxNode(void)
ตัวสร้างเริ่มต้นที่ตั้งสมาชิกทั้งหมดเป็นค่าว่าง

ฟังก์ชันสาธารณะ

AllowBdxTransferToRun(bool aEnable)
void
ใช้เพื่อเปิด/ปิดใช้เซิร์ฟเวอร์ BDX โดยไม่ต้องปิดอย่างสมบูรณ์และรีสตาร์ท
AwaitBdxReceiveInit(ReceiveInitHandler aReceiveInitHandler)
AwaitBdxSendInit(SendInitHandler aSendInitHandler)
CanBdxTransferRun(void)
bool
แสดงผลเป็น "จริง" หากเซิร์ฟเวอร์ BDX ได้รับอนุญาตให้เริ่มการโอนในตอนนี้ หรือส่งคืน "เท็จ" หากไม่เป็นเช่นนั้น
Init(WeaveExchangeManager *anExchangeMgr)
ทำให้การโอนทั้งหมดอยู่ในสถานะเริ่มต้นที่พร้อมใช้งาน จัดเก็บ WeaveExchangeManager และทรัพยากร Weave อื่นๆ ที่จำเป็น และตั้งค่า AllowBdxTransferToRun(true)
InitBdxReceive(BDXTransfer & aXfer, bool aICanDrive, bool aUCanDrive, bool aAsyncOk, ReferencedTLVData *aMetaData)
InitBdxSend(BDXTransfer & aXfer, bool aICanDrive, bool aUCanDrive, bool aAsyncOk, ReferencedTLVData *aMetaData)
InitBdxSend(BDXTransfer & aXfer, bool aICanDrive, bool aUCanDrive, bool aAsyncOk, SendInit::MetaDataTLVWriteCallback aMetaDataWriteCallback, void *aMetaDataAppState)
IsInitialized(void)
bool
แสดงผลเป็น "จริง" หากเริ่มต้น BdxNode นี้แล้ว
NewTransfer(Binding *aBinding, BDXHandlers aBDXHandlers, ReferencedString & aFileDesignator, void *anAppState, BDXTransfer *& aXfer)
รับและตั้งค่า BDXTransfer ใหม่จากพูลการโอน (หากมี) หรือตั้งค่าเป็น NULL หากไม่เป็นเช่นนั้นและแสดงผลข้อผิดพลาด
NewTransfer(WeaveConnection *aCon, BDXHandlers aBDXHandlers, ReferencedString & aFileDesignator, void *anAppState, BDXTransfer *& aXfer)
รับและตั้งค่า BDXTransfer ใหม่จากพูลการโอน (หากมี) หรือตั้งค่าเป็น NULL หากไม่เป็นเช่นนั้นและแสดงผลข้อผิดพลาด
Shutdown(void)
ปิดการโอนทั้งหมดและปล่อยทรัพยากร Weave ทั้งหมด (ปัจจุบันตั้งค่า mExchangeMgr เป็น NULL)

ฟังก์ชันสาธารณะแบบคงที่

HandleReceiveInit(ExchangeContext *anEc, const IPPacketInfo *aPktInfo, const WeaveMessageInfo *aWeaveMsgInfo, uint32_t aProfileId, uint8_t aMessageType, PacketBuffer *aPacketBuffer)
void
HandleSendInit(ExchangeContext *anEc, const IPPacketInfo *aPktInfo, const WeaveMessageInfo *aWeaveMsgInfo, uint32_t aProfileId, uint8_t aMessageType, PacketBuffer *aPacketBuffer)
void
ShutdownTransfer(BDXTransfer *aXfer)
void
ปิดออบเจ็กต์การโอนที่ระบุและกลับไปยังพูล

ฟังก์ชันสาธารณะ

AllowBdxTransferToRun

void AllowBdxTransferToRun(
  bool aEnable
)

ใช้เพื่อเปิด/ปิดใช้เซิร์ฟเวอร์ BDX โดยไม่ต้องปิดอย่างสมบูรณ์และรีสตาร์ท

รายละเอียด
พารามิเตอร์
[in] aEnable
เปิดใช้ (จริง) หรือปิดใช้ (เท็จ)

AwaitBdxReceiveInit

WEAVE_ERROR AwaitBdxReceiveInit(
  ReceiveInitHandler aReceiveInitHandler
)

AwaitBdxSendInit

WEAVE_ERROR AwaitBdxSendInit(
  SendInitHandler aSendInitHandler
)

BdxNode

 BdxNode(
  void
)

ตัวสร้างเริ่มต้นที่ตั้งสมาชิกทั้งหมดเป็นค่าว่าง

อย่าพยายามดำเนินการใดๆ กับเซิร์ฟเวอร์จนกว่าคุณจะเรียก init() เป็นอย่างน้อย

CanBdxTransferRun

bool CanBdxTransferRun(
  void
)

แสดงผลเป็น "จริง" หากเซิร์ฟเวอร์ BDX ได้รับอนุญาตให้เริ่มการโอนในตอนนี้ หรือส่งคืน "เท็จ" หากไม่เป็นเช่นนั้น

รายละเอียด
การคืนสินค้า
true ถ้าอนุญาตให้ถ่ายโอน BDX ได้ จะ false ถ้าไม่อนุญาต

Init

WEAVE_ERROR Init(
  WeaveExchangeManager *anExchangeMgr
)

ทำให้การโอนทั้งหมดอยู่ในสถานะเริ่มต้นที่พร้อมใช้งาน จัดเก็บ WeaveExchangeManager และทรัพยากร Weave อื่นๆ ที่จำเป็น และตั้งค่า AllowBdxTransferToRun(true)

รายละเอียด
พารามิเตอร์
[in] anExchangeMgr
เครื่องมือจัดการ Exchange ที่จะใช้สำหรับการดำเนินการโอนจำนวนมากนี้
ผลลัพธ์
WEAVE_NO_ERROR
หากสำเร็จ
WEAVE_ERROR_INCORRECT_STATE
หาก mExchangeMgr ไม่เป็นค่าว่าง เริ่มต้นแล้ว

InitBdxReceive

WEAVE_ERROR InitBdxReceive(
  BDXTransfer & aXfer,
  bool aICanDrive,
  bool aUCanDrive,
  bool aAsyncOk,
  ReferencedTLVData *aMetaData
)

InitBdxSend

WEAVE_ERROR InitBdxSend(
  BDXTransfer & aXfer,
  bool aICanDrive,
  bool aUCanDrive,
  bool aAsyncOk,
  ReferencedTLVData *aMetaData
)

InitBdxSend

WEAVE_ERROR InitBdxSend(
  BDXTransfer & aXfer,
  bool aICanDrive,
  bool aUCanDrive,
  bool aAsyncOk,
  SendInit::MetaDataTLVWriteCallback aMetaDataWriteCallback,
  void *aMetaDataAppState
)

IsInitialized

bool IsInitialized(
  void
)

แสดงผลเป็น "จริง" หากเริ่มต้น BdxNode นี้แล้ว

รายละเอียด
การคืนสินค้า
"จริง" หากออบเจ็กต์นี้เริ่มต้น

NewTransfer

WEAVE_ERROR NewTransfer(
  Binding *aBinding,
  BDXHandlers aBDXHandlers,
  ReferencedString & aFileDesignator,
  void *anAppState,
  BDXTransfer *& aXfer
)

รับและตั้งค่า BDXTransfer ใหม่จากพูลการโอน (หากมี) หรือตั้งค่าเป็น NULL หากไม่เป็นเช่นนั้นและแสดงผลข้อผิดพลาด

รายละเอียด
พารามิเตอร์
[in] aBinding
การเชื่อมโยงกับโหนดที่เราจะเริ่มการโอน ซึ่งใช้สร้าง ExchangeContext ที่เชื่อมโยงสําหรับการโอนนี้
[in] aBDXHandlers
โครงสร้างของเครื่องจัดการ Callback BDX ที่จะเรียกใช้ระหว่างการโอน
[in] aFileDesignator
ตัวกำหนดไฟล์สำหรับไฟล์ที่จะโอน
[in] anAppState
ออบเจ็กต์สถานะเฉพาะแอปพลิเคชันที่จะแนบกับ BDXTransfer เพื่อการใช้งานโดยแอปพลิเคชันของผู้ใช้และ Callback ที่เชื่อมโยง
[in] aXfer
ตัวชี้แบบผ่านการอ้างอิงที่จะชี้ไปยังออบเจ็กต์ BDXTransfer ใหม่ หากมี หรือจะเป็น NULL
ผลลัพธ์
WEAVE_NO_ERROR
หากเราพบ BDXTransfer ใหม่สำเร็จ
WEAVE_ERROR_NO_MEMORY
หากสร้าง ExchangeContext ไม่ได้
WEAVE_ERROR_TOO_MANY_CONNECTIONS
หากมีการโอนที่ทำงานอยู่มากเกินไปและ aXfer มีค่าว่าง
WEAVE_ERROR_INCORRECT_STATE
หากไม่ได้เตรียม aBinding

NewTransfer

WEAVE_ERROR NewTransfer(
  WeaveConnection *aCon,
  BDXHandlers aBDXHandlers,
  ReferencedString & aFileDesignator,
  void *anAppState,
  BDXTransfer *& aXfer
)

รับและตั้งค่า BDXTransfer ใหม่จากพูลการโอน (หากมี) หรือตั้งค่าเป็น NULL หากไม่เป็นเช่นนั้นและแสดงผลข้อผิดพลาด

รายละเอียด
พารามิเตอร์
[in] aCon
WeaveConnection ไปยังโหนดที่เราจะเริ่มต้นการโอนด้วย ซึ่งใช้สร้าง ExchangeContext ที่เชื่อมโยงสําหรับการโอนนี้
[in] aBDXHandlers
โครงสร้างของเครื่องจัดการ Callback BDX ที่จะเรียกใช้ระหว่างการโอน
[in] aFileDesignator
ตัวกำหนดไฟล์สำหรับไฟล์ที่จะโอน
[in] anAppState
ออบเจ็กต์สถานะเฉพาะแอปพลิเคชันที่จะแนบกับ BDXTransfer เพื่อการใช้งานโดยแอปพลิเคชันของผู้ใช้และ Callback ที่เชื่อมโยง
[in] aXfer
ตัวชี้แบบผ่านการอ้างอิงที่จะชี้ไปยังออบเจ็กต์ BDXTransfer ใหม่ หากมี หรือจะเป็น NULL
ผลลัพธ์
WEAVE_NO_ERROR
หากเราพบ BDXTransfer ใหม่สำเร็จ
WEAVE_ERROR_NO_MEMORY
หากสร้าง ExchangeContext ไม่ได้
WEAVE_ERROR_TOO_MANY_CONNECTIONS
หากมีการโอนที่ทำงานอยู่มากเกินไปและ aXfer มีค่าว่าง
WEAVE_ERROR_INCORRECT_STATE
หากยังไม่มีการตั้งค่า mExchangeMgr หรือในกรณีที่ aCon เชื่อมต่อไม่สำเร็จ

ปิดการทำงาน

WEAVE_ERROR Shutdown(
  void
)

ปิดการโอนทั้งหมดและปล่อยทรัพยากร Weave ทั้งหมด (ปัจจุบันตั้งค่า mExchangeMgr เป็น NULL)

ตั้งค่า AllowBdxTransferToRun(false) และยกเลิกการเชื่อมต่อ Callback ปัจจุบัน (เช่น SendInitHandler)

รายละเอียด
การคืนสินค้า
WEAVE_NO_ERROR หากปิดการทำงานสำเร็จ ส่วนข้อผิดพลาดอื่นๆ หาก AwaitBdxSend/ReceiveInit แสดงข้อผิดพลาด

ฟังก์ชันสาธารณะแบบคงที่

HandleReceiveInit

void HandleReceiveInit(
  ExchangeContext *anEc,
  const IPPacketInfo *aPktInfo,
  const WeaveMessageInfo *aWeaveMsgInfo,
  uint32_t aProfileId,
  uint8_t aMessageType,
  PacketBuffer *aPacketBuffer
)

HandleSendInit

void HandleSendInit(
  ExchangeContext *anEc,
  const IPPacketInfo *aPktInfo,
  const WeaveMessageInfo *aWeaveMsgInfo,
  uint32_t aProfileId,
  uint8_t aMessageType,
  PacketBuffer *aPacketBuffer
)

ShutdownTransfer

void ShutdownTransfer(
  BDXTransfer *aXfer
)

ปิดออบเจ็กต์การโอนที่ระบุและกลับไปยังพูล

ซึ่งเลื่อนไปตาม BDXTransfer::Shutdown()

รายละเอียด
พารามิเตอร์
[in] aXfer
BDXTransfer ที่จะปิดการทำงาน