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

Özet

Oluşturucular ve Yıkıcılar

BdxNode(void)
Tüm üyeleri NULL olarak ayarlayan varsayılan kurucu.

Kamu işlevleri

AllowBdxTransferToRun(bool aEnable)
void
BDX sunucusunu tam olarak 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 şu anda aktarım başlatmasına izin veriliyorsa true (doğru), aksi takdirde 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 ile 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ıp hata mesajı döndürün.
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ıp hata mesajı döndürün.
Shutdown(void)
Tüm aktarımları kapatır ve tüm Weave kaynaklarını serbest bırakır (şu anda mExchangeMgr değeri NULL olarak ayarlanmıştı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.

Kamu işlevleri

AllowBdxTransferToRun

void AllowBdxTransferToRun(
  bool aEnable
)

BDX sunucusunu tam olarak 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 kurucu.

En azından init() çağrısı yapana kadar sunucuyla herhangi bir işlem yapmayın.

CanBdxTransferRun

bool CanBdxTransferRun(
  void
)

BDX sunucusunun şu anda aktarım başlatmasına izin veriliyorsa true (doğru), aksi takdirde false (yanlış) değerini döndürür.

Ayrıntılar
İadeler
BDX aktarımına izin veriliyorsa true (doğru), izin verilmiyorsa false (yanlış)

Başlat

WEAVE_ERROR Init(
  WeaveExchangeManager *anExchangeMgr
)

Tüm aktarımları varsayılan bir durumda kullanıma hazır duruma getirin, WeaveExchangeManager ile 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.
Döndürülen Değerler
WEAVE_NO_ERROR
başarılı olursa
WEAVE_ERROR_INCORRECT_STATE
mExchangeMgr null değilse, zaten başlatılmış

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 doğru

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ıp hata mesajı döndürün.

Ayrıntılar
Parametreler
[in] aBinding
Aktarımı birlikte 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 çağırma işleyicilerinin yapısı
[in] aFileDesignator
Aktarılacak dosyanın dosya tanımlayıcısı.
[in] anAppState
Kullanıcı uygulaması ve ilişkili geri çağırma işlevleri tarafından kullanılmak üzere BDXTransfer'e eklenecek uygulamaya özel durum nesnesi.
[in] aXfer
Varsa yeni BDXTransfer nesnesine işaret eden, iletilen bir referans işaretçisi, aksi takdirde NULL olur.
Döndürülen Değerler
WEAVE_NO_ERROR
Yeni bir BDXTransfer başarıyla bulunduysa.
WEAVE_ERROR_NO_MEMORY
ExchangeContext oluşturulamadıysa
WEAVE_ERROR_TOO_MANY_CONNECTIONS
Şu anda çok fazla aktarım etkin durumdaysa 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ıp hata mesajı döndürün.

Ayrıntılar
Parametreler
[in] aCon
Aktarımı başlatacağımız düğüme yönelik WeaveConnection. 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 çağırma işleyicilerinin yapısı
[in] aFileDesignator
Aktarılacak dosyanın dosya tanımlayıcısı.
[in] anAppState
Kullanıcı uygulaması ve ilişkili geri çağırma işlevleri tarafından kullanılmak üzere BDXTransfer'e eklenecek uygulamaya özel durum nesnesi.
[in] aXfer
Varsa yeni BDXTransfer nesnesine işaret eden, iletilen bir referans işaretçisi, aksi takdirde NULL olur.
Döndürülen Değerler
WEAVE_NO_ERROR
Yeni bir BDXTransfer başarıyla bulunduysa.
WEAVE_ERROR_NO_MEMORY
ExchangeContext oluşturulamadıysa
WEAVE_ERROR_TOO_MANY_CONNECTIONS
Şu anda çok fazla aktarım etkin durumdaysa 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 (şu anda mExchangeMgr değeri NULL olarak ayarlanmıştır).

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

Ayrıntılar
İadeler
Başarıyla kapatıldığında WEAVE_NO_ERROR, 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 yalnızca BDXTransfer::Shutdown() değerine ayarlanır.

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