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

Özet

Oluşturucular ve Yıkıcılar

BdxNode(void)
Tüm üyeleri NULL olarak ayarlayan varsayılan oluşturucu.

Herkese açık işlevler

AllowBdxTransferToRun(bool aEnable)
void
BDX sunucusunu tamamen kapatıp yeniden başlatmadan etkinleştirmek/devre dışı bırakmak için kullanın.
AwaitBdxReceiveInit(ReceiveInitHandler aReceiveInitHandler)
AwaitBdxSendInit(SendInitHandler aSendInitHandler)
CanBdxTransferRun(void)
bool
BDX sunucusunun o anda aktarım başlatmasına izin verilirse true, değilse false (yanlış) değerini döndürür.
Init(WeaveExchangeManager *anExchangeMgr)
Tüm aktarımları varsayılan bir durumda kullanıma hazır duruma getirin, WeaveExchangeManager'ı ve diğer gerekli Weave kaynaklarını depolayın ve allowBdxTransferToRun(true) değerini ayarlayın.
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
Bu BdxNode zaten başlatıldıysa true değerini döndürür.
NewTransfer(Binding *aBinding, BDXHandlers aBDXHandlers, ReferencedString & aFileDesignator, void *anAppState, BDXTransfer *& aXfer)
Varsa aktarım havuzundan yeni bir BDXTransfer alıp ayarlayın. Aksi takdirde NULL değerine ayarlayın ve hata döndürür.
NewTransfer(WeaveConnection *aCon, BDXHandlers aBDXHandlers, ReferencedString & aFileDesignator, void *anAppState, BDXTransfer *& aXfer)
Varsa aktarım havuzundan yeni bir BDXTransfer alıp ayarlayın. Aksi takdirde NULL değerine ayarlayın ve hata döndürür.
Shutdown(void)
Tüm aktarımları kapatır ve tüm Weave kaynaklarını serbest bırakır (mExchangeMgr şu anda NULL olarak ayarlıdır).

Herkese açık statik işlevler

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
Belirtilen aktarım nesnesini kapatın ve havuza geri döndürün.

Herkese açık işlevler

AllowBdxTransferToRun

void AllowBdxTransferToRun(
  bool aEnable
)

BDX sunucusunu tamamen kapatıp yeniden başlatmadan etkinleştirmek/devre dışı bırakmak için kullanın.

Ayrıntılar
Parametreler
[in] aEnable
Etkinleştir (doğru) veya devre dışı bırak (yanlış)

AwaitBdxReceiveInit

WEAVE_ERROR AwaitBdxReceiveInit(
  ReceiveInitHandler aReceiveInitHandler
)

AwaitBdxSendInit

WEAVE_ERROR AwaitBdxSendInit(
  SendInitHandler aSendInitHandler
)

BdxNode

 BdxNode(
  void
)

Tüm üyeleri NULL olarak ayarlayan varsayılan oluşturucu.

En azından init() işlevini çağırana kadar sunucuyla herhangi bir işlem yapmayı denemeyin.

CanBdxTransferRun

bool CanBdxTransferRun(
  void
)

BDX sunucusunun o anda aktarım başlatmasına izin verilirse true, değilse false (yanlış) değerini döndürür.

Ayrıntılar
İadeler
BDX aktarımına izin verilirse true, değilse false

Init

WEAVE_ERROR Init(
  WeaveExchangeManager *anExchangeMgr
)

Tüm aktarımları varsayılan bir durumda kullanıma hazır duruma getirin, WeaveExchangeManager'ı ve diğer gerekli Weave kaynaklarını depolayın ve allowBdxTransferToRun(true) değerini ayarlayın.

Ayrıntılar
Parametreler
[in] anExchangeMgr
Bu toplu aktarım işlemi için kullanılacak bir exchange yöneticisi.
Değerleri Döndür
WEAVE_NO_ERROR
başarılıysa
WEAVE_ERROR_INCORRECT_STATE
mExchangeMgr null değilse zaten başlatıldı.

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
)

Bu BdxNode zaten başlatıldıysa true değerini döndürür.

Ayrıntılar
İadeler
bu nesne başlatıldıysa true

NewTransfer

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

Varsa aktarım havuzundan yeni bir BDXTransfer alıp ayarlayın. Aksi takdirde NULL değerine ayarlayın ve hata döndürür.

Ayrıntılar
Parametreler
[in] aBinding
Aktarımı başlatacağımız düğüme bağlama. Bu aktarımla ilişkili bir ExchangeContext oluşturmak için kullanılır.
[in] aBDXHandlers
Aktarım sırasında çağrılacak BDX geri arama işleyicilerin yapısı
[in] aFileDesignator
Aktarılacak dosyanın dosya tanımlayıcısı.
[in] anAppState
Kullanıcı uygulaması ve ilişkili geri aramalar tarafından kullanılmak üzere BDXTransfer'e eklenecek uygulamaya özel durum nesnesi.
[in] aXfer
Varsa yeni BDXTransfer nesnesine işaret edecek, referanstan geçen bir işaretçi, aksi takdirde NULL ifadesi gösterilir.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıyla yeni bir BDXTransfer bulunduysa.
WEAVE_ERROR_NO_MEMORY
ExchangeContext oluşturulamıyorsa
WEAVE_ERROR_TOO_MANY_CONNECTIONS
Etkin durumda çok fazla aktarım varsa ve aXfer NULL ise
WEAVE_ERROR_INCORRECT_STATE
aBinding hazır değilse

NewTransfer

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

Varsa aktarım havuzundan yeni bir BDXTransfer alıp ayarlayın. Aksi takdirde NULL değerine ayarlayın ve hata döndürür.

Ayrıntılar
Parametreler
[in] aCon
Aktarımı başlatacağımız düğüme giden WeaveConnection bağlantısı. Bu aktarımla ilişkili bir ExchangeContext oluşturmak için kullanılır.
[in] aBDXHandlers
Aktarım sırasında çağrılacak BDX geri arama işleyicilerin yapısı
[in] aFileDesignator
Aktarılacak dosyanın dosya tanımlayıcısı.
[in] anAppState
Kullanıcı uygulaması ve ilişkili geri aramalar tarafından kullanılmak üzere BDXTransfer'e eklenecek uygulamaya özel durum nesnesi.
[in] aXfer
Varsa yeni BDXTransfer nesnesine işaret edecek, referanstan geçen bir işaretçi, aksi takdirde NULL ifadesi gösterilir.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıyla yeni bir BDXTransfer bulunduysa.
WEAVE_ERROR_NO_MEMORY
ExchangeContext oluşturulamıyorsa
WEAVE_ERROR_TOO_MANY_CONNECTIONS
Etkin durumda çok fazla aktarım varsa ve aXfer NULL ise
WEAVE_ERROR_INCORRECT_STATE
mExchangeMgr henüz ayarlanmadıysa veya aCon başarıyla bağlanmadıysa

Kapat

WEAVE_ERROR Shutdown(
  void
)

Tüm aktarımları kapatır ve tüm Weave kaynaklarını serbest bırakır (mExchangeMgr şu anda NULL olarak ayarlıdır).

AllowBdxTransferToRun(false) değerini ayarlar ve geçerli geri çağırmaların bağlantısını keser (örneğin, SendInitHandler).

Ayrıntılar
İadeler
WEAVE_NO_ERROR başarıyla kapatılırsa, AwaitBdxSend/ReceiveInit hata döndürürse başka hata oluşur

Herkese açık statik işlevler

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
)

Belirtilen aktarım nesnesini kapatın ve havuza geri döndürün.

Bu işlem, BDXTransfer::Shutdown() işlemini kolaylaştırır.

Ayrıntılar
Parametreler
[in] aXfer
Kapatılacak BDXTransfer