nl::Weave::Profiles::DataManagement_Legacy

Bu ad alanı, Weave Veri Yönetimi (WDM) profili için kullanımdan kaldırılmak üzere olan tüm arayüzleri içerir.

Özet

Sıralamalar

@103{
  kStatus_CancelSuccess = 0x0001,
  kStatus_InvalidPath = 0x0013,
  kStatus_UnknownTopic = 0x0014,
  kStatus_IllegalReadRequest = 0x0015,
  kStatus_IllegalWriteRequest = 0x0016,
  kStatus_InvalidVersion = 0x0017,
  kStatus_UnsupportedSubscriptionMode = 0x0018
}
enum
@166{
  kViewPoolSize = WEAVE_CONFIG_WDM_VIEW_POOL_SIZE,
  kSubscribePoolSize = WEAVE_CONFIG_WDM_SUBSCRIBE_POOL_SIZE,
  kCancelSubscriptionPoolSize = WEAVE_CONFIG_WDM_CANCEL_SUBSCRIPTION_POOL_SIZE,
  kUpdatePoolSize = WEAVE_CONFIG_WDM_UPDATE_POOL_SIZE,
  kNotifyPoolSize = WEAVE_CONFIG_WDM_NOTIFY_POOL_SIZE,
  kTransactionTableSize = WEAVE_CONFIG_WDM_TRANSACTION_TABLE_SIZE,
  kBindingTableSize = WEAVE_CONFIG_WDM_BINDING_TABLE_SIZE,
  kNotifierTableSize = WEAVE_CONFIG_WDM_NOTIFIER_TABLE_SIZE,
  kSubscriptionMgrTableSize = WEAVE_CONFIG_WDM_SUBSCRIPTION_MGR_TABLE_SIZE
}
enum
WDM havuzu ve tablo boyutları.
@167{
  kMsgType_ViewRequest = 0x10,
  kMsgType_ViewResponse = 0x11,
  kMsgType_SubscribeRequest = 0x12,
  kMsgType_SubscribeResponse = 0x13,
  kMsgType_CancelSubscriptionRequest = 0x14,
  kMsgType_UpdateRequest = 0x15,
  kMsgType_NotifyRequest = 0x16,
  kMsgType_ViewRequest_Deprecated = 0x00,
  kMsgType_ViewResponse_Deprecated = 0x01,
  kMsgType_SubscribeRequest_Deprecated = 0x02,
  kMsgType_SubscribeResponse_Deprecated = 0x03,
  kMsgType_CancelSubscriptionRequest_Deprecated = 0x04,
  kMsgType_UpdateRequest_Deprecated = 0x05,
  kMsgType_NotifyRequest_Deprecated = 0x06
}
enum
WDM profili mesaj türleri.
@168{
  kTransactionIdNotSpecified = 0,
  kResponseTimeoutNotSpecified = 0,
  kVersionNotSpecified = 0xFFFFFFFFFFFFFFFFULL,
  kInstanceIdNotSpecified = 0,
  kDefaultBindingTableIndex = 0,
  kWeaveTLVTagLen = 8,
  kWeaveTLVControlByteLen = 1
}
enum
WDM'ye özgü çeşitli sabitler.
@169{
  kStatus_CancelSuccess = 0x0001,
  kStatus_InvalidPath = 0x0013,
  kStatus_UnknownTopic = 0x0014,
  kStatus_IllegalReadRequest = 0x0015,
  kStatus_IllegalWriteRequest = 0x0016,
  kStatus_InvalidVersion = 0x0017,
  kStatus_UnsupportedSubscriptionMode = 0x0018
}
enum
WDM'ye özel durum kodları.
@170{
  kTag_WDMPathList = 100,
  kTag_WDMPathProfile = 101,
  kTag_WDMPathProfileId = 1,
  kTag_WDMPathProfileInstance = 2,
  kTag_WDMPathProfileId_Deprecated = 102,
  kTag_WDMPathProfileInstance_Deprecated = 103,
  kTag_WDMPathArrayIndexSelector = 104,
  kTag_WDMPathArrayValueSelector = 105,
  kTag_WDMDataList = 200,
  kTag_WDMDataListElementPath = 3,
  kTag_WDMDataListElementVersion = 4,
  kTag_WDMDataListElementData = 5,
  kTag_WDMDataListElementPath_Deprecated = 201,
  kTag_WDMDataListElementVersion_Deprecated = 202,
  kTag_WDMDataListElementData_Deprecated = 203
}
enum
Veri Yönetimi Protokolü Etiketleri.
@171{
  kTopicIdPublisherSpecificMask = 0xFFFF000000000000ULL,
  kTopicIdNotSpecified = 0x0000000000000000ULL,
  kAnyTopicId = 0xFFFFFFFFFFFFFFFFULL
}
enum
Ayırt edici konu kimlikleri.
WeaveTransportOption{
  kTransport_TCP = 1,
  kTransport_WRMP = 2,
  kTransport_UDP = 3
}
enum
WDM aktarım seçenekleri.

Türdefler

TopicIdentifier typedef
uint64_t
Konu tanımlayıcısı.

İşlevler

CheckTLVType(nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader)
bool
Okunan bir TLV öğesinin beklenen TLV türüne sahip olduğundan emin olun.
CheckWDMTag(uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader)
bool
WDM'ye özel bir etiketi kontrol edin.
CloseDataListElement(nl::Weave::TLV::TLVReader & aReader)
WDM veri listesi öğesini okumayı durdurun.
CloseList(nl::Weave::TLV::TLVReader & aReader)
WDM yolunu veya veri listesini okumayı durdurun.
EncodeDeprecatedPath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ...)
Kullanımdan kaldırılmış etiketler ve tam sayı örnek kimliği ile bir WDM yolu kodlayın.
EncodeDeprecatedPath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
Kullanımdan kaldırılmış etiketler ve dize örneği kimliği içeren bir WDM yolu kodlayın.
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ...)
WDM yolunu tam sayı profil örnek kimliğiyle kodlayın.
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint32_t aInstanceIdLen, const uint8_t *aInstanceId, uint32_t aPathLen, ...)
WDM yolunu bayt dizisi örnek kimliğiyle kodlayın.
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
WDM yolunu dize örnek kimliği ile kodlayın.
EndDataListElement(nl::Weave::TLV::TLVWriter & aWriter)
Veri listesi öğesi yazmayı bitirin.
EndEncodePath(TLVWriter & aWriter, TLVType & mOuterContainer, WEAVE_ERROR mError)
EndList(nl::Weave::TLV::TLVWriter & aWriter)
Yol listesi veya veri listesi yazmayı bitirin.
EndList(ReferencedTLVData & aList, nl::Weave::TLV::TLVWriter & aWriter)
Yol listesi veya veri listesi yazmayı bitirin.
IsPublisherSpecific(const TopicIdentifier & aTopicId)
bool
Konu kimliğinin yayıncıya özel olup olmadığını kontrol edin.
OpenDataList(ReferencedTLVData & aDataList, nl::Weave::TLV::TLVReader & aReader)
Veri listesini okumaya başlayın.
OpenDataListElement(nl::Weave::TLV::TLVReader & aReader, nl::Weave::TLV::TLVReader & aPathReader, uint64_t & aVersion)
Bir veri listesi öğesini okumaya başlayın.
OpenPathList(ReferencedTLVData & aPathList, nl::Weave::TLV::TLVReader & aReader)
Yol listesini okumaya başlayın.
PublisherSpecificTopicId(void)
Sıfırdan yayıncıya özel bir konu kimliği oluşturun.
SendStatusReport(ExchangeContext *aExchangeCtx, StatusReport & aStatus)
StartDataList(nl::Weave::TLV::TLVWriter & aWriter)
Veri listesi yazmaya başlayın.
StartDataList(ReferencedTLVData & aDataList, nl::Weave::TLV::TLVWriter & aWriter)
Belirli bir ReferencedTLVData nesnesine veri listesi yazmaya başlayın.
StartDataListElement(nl::Weave::TLV::TLVWriter & aWriter)
Bir veri listesi öğesi yazmaya başlayın.
StartEncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, TLVType & mOuterContainer, TLVType & mPath)
StartPathList(nl::Weave::TLV::TLVWriter & aWriter)
Yol listesi yazmaya başlayın.
TxnResponseHandler(ExchangeContext *anExchangeCtx, const IPPacketInfo *anAddrInfo, const WeaveMessageInfo *aMsgInfo, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg)
void
TxnTimeoutHandler(ExchangeContext *anExchangeCtx)
void
ValidateTLVType(nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader)
Okunmakta olan bir TLV öğesinin beklenen TLV türüne sahip olduğunu doğrulayın.
ValidateWDMTag(uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader)
Okunmakta olan bir TLV öğesinin beklenen WDM etiketine sahip olduğunu doğrulayın.

Sınıflar

nl::Weave::Profiles::DataManagement_Legacy::Binding

Binding sınıfı, iletişim durumunu Weave'i kullanarak bir uygulama varlığı adına yönetir.

nl::Weave::Profiles::DataManagement_Legacy::ClientDataManager

WDM istemcisinin gerektirdiği onay ve gösterge yöntemi tanımlarını içeren soyut bir sınıf.

nl::Weave::Profiles::DataManagement_Legacy::ClientNotifier

Bir WDM istemcisinde abonelik ve bildirim desteği istendiğinde kullanılan yardımcı sınıf.

nl::Weave::Profiles::DataManagement_Legacy::DMClient

Uygulamaya özel WDM istemcileri için soyut temel sınıf.

nl::Weave::Profiles::DataManagement_Legacy::DMPublisher

Uygulamaya özel WDM yayıncıları için soyut temel sınıf.

nl::Weave::Profiles::DataManagement_Legacy::ProfileDatabase

Soyut ProfileDatabase yardımcı sınıfı.

nl::Weave::Profiles::DataManagement_Legacy::ProtocolEngine

WDM protokolü motor sınıfı.

nl::Weave::Profiles::DataManagement_Legacy::PublisherDataManager

WDM yayıncısının gerektirdiği onay ve bildirim yöntemi tanımlarını içeren soyut bir sınıf.

Sıralamalar

@103

 @103
Özellikler
kStatus_CancelSuccess

Bu eski durum kodu, bir aboneliğin başarıyla iptal edildiği anlamına gelir.

Bu durum kodu, bir aboneliğin başarıyla iptal edildiği anlamına gelir.

kStatus_IllegalReadRequest

Bu eski durum kodu, belirli bir veri öğesini okumak için istekte bulunan düğümün bunu yapma izni olmadığı anlamına gelir.

Bu durum kodu, belirli bir veri öğesini okuma isteğinde bulunan düğümün bunu yapma izni olmadığı anlamına gelir.

kStatus_IllegalWriteRequest

Bu eski durum kodu, belirli bir veri öğesini yazmak için istekte bulunan düğümün bunu yapma izninin olmadığı anlamına gelir.

Bu durum kodu, belirli bir veri öğesini yazmak için istekte bulunan düğümün bunu yapma izni olmadığı anlamına gelir.

kStatus_InvalidPath

Bu eski durum kodu, görüntüleme veya güncelleme isteği çerçevesinin yol listesindeki bir yolun, katılımcının düğümde yerleşik şemasıyla eşleşmediği anlamına gelir.

Bu durum kodu, bir görüntüleme veya güncelleme istek çerçevesinin yol listesindeki bir yolun, katılımcının düğümde yerleşik şemasıyla eşleşmediği anlamına gelir.

kStatus_InvalidVersion

Bu eski durum kodu, güncelleme isteğine dahil edilen verilerin sürümünün yayıncıdaki en son sürümle eşleşmediği ve bu nedenle güncellemenin uygulanamadığı anlamına gelir.

Bu durum kodu, güncelleme isteğine dahil edilen verilerin sürümünün yayıncıdaki en son sürümle eşleşmediği ve bu nedenle güncellemenin uygulanamadığı anlamına gelir.

kStatus_UnknownTopic

Bu eski durum kodu, iptal isteğinde veya bildirimde belirtilen konu tanımlayıcısının, alıcı düğümdeki mevcut herhangi bir abonelikle eşleşmediği anlamına gelir.

Bu durum kodu, iptal isteğinde veya bildirimde belirtilen konu tanımlayıcısının, alıcı düğümdeki mevcut herhangi bir abonelikle eşleşmediği anlamına gelir.

kStatus_UnsupportedSubscriptionMode

Bu eski durum kodu, istenen abonelik modunun alıcı cihaz tarafından desteklenmediği anlamına gelir.

Bu durum kodu, istenen abonelik modunun alıcı cihaz tarafından desteklenmediği anlamına gelir.

@166

 @166

WDM havuzu ve tablo boyutları.

WDM, aşağıdaki gibi çalışması için gereken çeşitli havuzları ve tabloları tanımlar.

Müşteri işlem havuzları:

  • kViewPoolSize
  • kSubscribePoolSize
  • kCancelSubscriptionPoolSize
  • kUpdatePoolSize

Yayıncı işlem havuzları:

  • kNotifyPoolSize

Protokol motoru tabloları:

  • kTransactionTableSize
  • kBindingTableSize

Abonelikle ilgili tablolar:

  • kNotifierTableSize (yalnızca istemci)
  • kSubscriptionMgrTableSize (yalnızca yayıncı)

Bunların yapılandırılabilir miktarlar olduğunu ve platform başına değerlerin ilişkili WeaveConfig.h dosyasında göründüğünü unutmayın.

Özellikler
kBindingTableSize

Bu, WDM protokol motorundaki bağlama tablosunun varsayılan boyutudur.

Bu değer, WEAVE_CONFIG_WDM_BINDING_TABLE_SIZE aracılığıyla yapılandırılabilir.

kCancelSubscriptionPoolSize

Bu, bir WDM istemcisi için abonelik iptali işlem havuzunun varsayılan boyutudur.

Bu değer, WEAVE_CONFIG_WDM_CANCEL_SUBSCRIPTION_POOL_SIZE aracılığıyla yapılandırılabilir.

kNotifierTableSize

Bu, WDM istemcileri için bildirim tablosunun varsayılan boyutudur.

Bu değer, WEAVE_CONFIG_WDM_NOTIFIER_TABLE_SIZE aracılığıyla yapılandırılabilir.

kNotifyPoolSize

Bu, WDM yayıncısı için istek bildirme işlemi havuzunun varsayılan boyutudur.

Bu değer, WEAVE_CONFIG_WDM_NOTIFY_POOL_SIZE aracılığıyla yapılandırılabilir.

kSubscribePoolSize

Bu, WDM istemcisi için abone olma isteği işlem havuzunun varsayılan boyutudur.

Bu değer, WEAVE_CONFIG_WDM_SUBSCRIBE_POOL_SIZE aracılığıyla yapılandırılabilir.

kSubscriptionMgrTableSize

Bu, WDM yayıncıları için abonelik tablosunun varsayılan boyutudur.

Bu değer, WEAVE_CONFIG_WDM_SUBSCRIPTION_MGR_TABLE_SIZE aracılığıyla yapılandırılabilir.

kTransactionTableSize

Bu, WDM protokol motorundaki işlem tablosunun varsayılan boyutudur.

Bu değer, WEAVE_CONFIG_WDM_TRANSACTION_TABLE_SIZE aracılığıyla yapılandırılabilir.

kUpdatePoolSize

Bu, WDM istemcisi için güncelleme isteği işlem havuzunun varsayılan boyutudur.

Bu değer, WEAVE_CONFIG_WDM_UPDATE_POOL_SIZE aracılığıyla yapılandırılabilir.

kViewPoolSize

Bu, WDM istemcisi için görüntüleme isteği işlem havuzunun varsayılan boyutudur.

Bu değer, WEAVE_CONFIG_WDM_VIEW_POOL_SIZE aracılığıyla yapılandırılabilir.

@167

 @167

WDM profili mesaj türleri.

Bu değerler veri yönetimi spesifikasyonunda belirtilmiştir.

DİKKAT!! 2015'in 1. çeyreği itibarıyla, WDM'nin önceki sürümlerinde kullanılan mesaj türleri kullanımdan kaldırılmış ve yeni mesaj türleri tanımlanmıştır. Bu, geçmiş paketleme ve ayrıştırma ayrıntılarıyla ara vermek için yeterli bir kayma bulunduğunu göstermektedir.

Özellikler
kMsgType_CancelSubscriptionRequest

Abonelik isteği mesajını iptal edin.

kMsgType_CancelSubscriptionRequest_Deprecated

desteği sonlandırıldı

kMsgType_NotifyRequest

İstek mesajını bildir.

kMsgType_NotifyRequest_Deprecated

desteği sonlandırıldı

kMsgType_SubscribeRequest

Abonelik isteği mesajı.

kMsgType_SubscribeRequest_Deprecated

desteği sonlandırıldı

kMsgType_SubscribeResponse

Abone ol yanıt mesajı.

kMsgType_SubscribeResponse_Deprecated

desteği sonlandırıldı

kMsgType_UpdateRequest

İstek mesajını güncelleyin.

kMsgType_UpdateRequest_Deprecated

desteği sonlandırıldı

kMsgType_ViewRequest

İstek mesajını görüntüleyin.

kMsgType_ViewRequest_Deprecated

desteği sonlandırıldı

kMsgType_ViewResponse

Yanıt mesajını göster.

kMsgType_ViewResponse_Deprecated

desteği sonlandırıldı

@168

 @168

WDM'ye özgü çeşitli sabitler.

Özellikler
kDefaultBindingTableIndex

Birden fazla girişe sahip protokol motoru bağlama tablosundaki varsayılan bağlamanın dizini.

kInstanceIdNotSpecified

Profil örneği spesifikasyonu gerektiren çağrılarda "none" değeri belirtilir.

Çoğunlukla bu, söz konusu varlıkta profilin yalnızca bir örneğinin bulunduğu anlamına gelir.

kResponseTimeoutNotSpecified

İşlem isteğinde bulunan yöntemlerde, arayanın zaman aşımı belirtmeyi reddettiğini belirtir.

Genellikle bu, bir varsayılan kullanılması gerektiği anlamına gelir.

kTransactionIdNotSpecified

İşlem kimliği alan yöntemler ve veri yapılarında "hiçbiri" veya joker karakterli bir değer belirtir.

kVersionNotSpecified

Bir veri sürümünün belirtilmesini gerektiren çağrılarda "belirli bir sürüm yok" ifadesini belirtir.

kWeaveTLVControlByteLen

TLV'deki WDM yapılarını kodlayan destek yöntemlerinde kullanılan bir TLV kontrol baytının uzunluğu.

kWeaveTLVTagLen

Tam nitelikli bir TLV etiketinin bayt cinsinden standart uzunluğu, TLV içindeki WDM yapılarını kodlayan destek yöntemlerinde kullanılır.

@169

 @169

WDM'ye özel durum kodları.

Özellikler
kStatus_CancelSuccess

Bu eski durum kodu, bir aboneliğin başarıyla iptal edildiği anlamına gelir.

Bu durum kodu, bir aboneliğin başarıyla iptal edildiği anlamına gelir.

kStatus_IllegalReadRequest

Bu eski durum kodu, belirli bir veri öğesini okumak için istekte bulunan düğümün bunu yapma izni olmadığı anlamına gelir.

Bu durum kodu, belirli bir veri öğesini okuma isteğinde bulunan düğümün bunu yapma izni olmadığı anlamına gelir.

kStatus_IllegalWriteRequest

Bu eski durum kodu, belirli bir veri öğesini yazmak için istekte bulunan düğümün bunu yapma izninin olmadığı anlamına gelir.

Bu durum kodu, belirli bir veri öğesini yazmak için istekte bulunan düğümün bunu yapma izni olmadığı anlamına gelir.

kStatus_InvalidPath

Bu eski durum kodu, görüntüleme veya güncelleme isteği çerçevesinin yol listesindeki bir yolun, katılımcının düğümde yerleşik şemasıyla eşleşmediği anlamına gelir.

Bu durum kodu, bir görüntüleme veya güncelleme istek çerçevesinin yol listesindeki bir yolun, katılımcının düğümde yerleşik şemasıyla eşleşmediği anlamına gelir.

kStatus_InvalidVersion

Bu eski durum kodu, güncelleme isteğine dahil edilen verilerin sürümünün yayıncıdaki en son sürümle eşleşmediği ve bu nedenle güncellemenin uygulanamadığı anlamına gelir.

Bu durum kodu, güncelleme isteğine dahil edilen verilerin sürümünün yayıncıdaki en son sürümle eşleşmediği ve bu nedenle güncellemenin uygulanamadığı anlamına gelir.

kStatus_UnknownTopic

Bu eski durum kodu, iptal isteğinde veya bildirimde belirtilen konu tanımlayıcısının, alıcı düğümdeki mevcut herhangi bir abonelikle eşleşmediği anlamına gelir.

Bu durum kodu, iptal isteğinde veya bildirimde belirtilen konu tanımlayıcısının, alıcı düğümdeki mevcut herhangi bir abonelikle eşleşmediği anlamına gelir.

kStatus_UnsupportedSubscriptionMode

Bu eski durum kodu, istenen abonelik modunun alıcı cihaz tarafından desteklenmediği anlamına gelir.

Bu durum kodu, istenen abonelik modunun alıcı cihaz tarafından desteklenmediği anlamına gelir.

@170

 @170

Veri Yönetimi Protokolü Etiketleri.

Veri yönetimi protokolü, profil verilerinin TLV gösteriminde kullanılacak etiketleri tanımlar.

Her zaman olduğu gibi, yeni WDM ve eski arasında uyumluluk sorunları vardır. Eski zamanlarda bu etiketlerin hepsi profile özgü olarak uygulanıyordu. Bu da boş bir alan israfıydı. Artık, mümkün olduğunda bağlam etiketlerini kullanıyoruz ancak uygun durumlarda eskilerini tutmamız gerekiyor (ve yolları kodlamak için bir mekanizmamız olması gerekiyor).

kTag_WDMDataListElementData etiketi önceki sürümlerde kullanılmadı ve kod tarafından tamamen yoksayıldı. Bu nedenle, kullanımdan kaldırılmış bir sürüm sağlamamız gerekmiyor.

Özellikler
kTag_WDMDataList

Bu öğe yol, isteğe bağlı sürüm ve veri öğelerini içeren yapıların listesidir.

Etiket Türü: Profile özgü Öğe Türü: Dizi Yapısı: Üst düzey

kTag_WDMDataListElementData

Öğe, belirtilen yolla işaret edilen ve belirtilen sürüme sahip veriyi temsil eder.

Etiket Türü: Bağlama Özel Öğe Türü: Herhangi Bir İşlem: Zorunlu

kTag_WDMDataListElementData_Deprecated

Kullanımdan kaldırıldı.

Etiket Türü: Bağlama Özel Öğe Türü: Herhangi Bir İşlem: Zorunlu

kTag_WDMDataListElementPath

Öğe, bir veri listesi öğesinin yol bileşenidir.

Etiket Türü: Bağlama özel Öğe Türü: Yol Eli: Zorunlu

kTag_WDMDataListElementPath_Deprecated

Kullanımdan kaldırıldı.

Etiket Türü: Profile Özel Öğe Türü: Yol Efekti: Zorunlu

kTag_WDMDataListElementVersion

Bu öğe, bir veri listesi öğesinin sürüm bileşenidir.

Etiket Türü: Bağlama Özel Öğe Türü: Tamsayı Efekti: Gerekli

kTag_WDMDataListElementVersion_Deprecated

Kullanımdan kaldırıldı.

Etiket Türü: Profile Özel Öğe Türü: Tam Sayı Efekti: Gerekli

kTag_WDMPathArrayIndexSelector

Yol öğesi şemadaki bir diziye karşılık gelir ve içerilen tam sayı öğesi, bu dizide dizin olarak kullanılır.

Etiket Türü: Profile Özel Öğe Türü: Tam Sayı Yaklaşımı: İsteğe Bağlı

kTag_WDMPathArrayValueSelector

Path öğesi, şemadaki bir diziye karşılık gelir ve kapsüllenmiş öğe kayıt seçici olarak kullanılır.

Etiket Türü: Profile Özel Öğe Türü: Yapı Yapısı: İsteğe Bağlı

kTag_WDMPathList

Öğe, TLV yollarının bir listesidir.

Etiket Türü: Profile özgü Öğe Türü: Dizi Yapısı: Üst düzey

kTag_WDMPathProfile

Öğe, bir yolu başlatmak için kullanılan bir yapıdır ve yoldaki etiketlerin yorumlanması gereken profil bilgilerini içerir.

Etiket Türü: Profile Özel Öğe Türü: Yapı Yapısı: Gerekli

kTag_WDMPathProfileId

Öğe, TLV yolu başlatan yol profili öğesinin bir profil kimliği bileşenidir.

Etiket Türü: Bağlama Özel Öğe Türü: Tamsayı Efekti: Gerekli

kTag_WDMPathProfileId_Deprecated

Kullanımdan kaldırıldı.

Etiket Türü: Profile Özel Öğe Türü: Tam Sayı Efekti: Gerekli

kTag_WDMPathProfileInstance

Öğe, TLV yolundaki profil kimliğini takip edebilen bir profil örneğidir.

Bir düğümün, belirli bir profilin birden çok örneğine sahip olabileceği veya içermeyebileceğini ve yalnızca bir tane olması durumunda bu öğenin atlanabileceğini unutmayın.

Etiket Türü: Bağlama Özel Öğe Türü: Tüm Yıkım: İsteğe Bağlı

kTag_WDMPathProfileInstance_Deprecated

Kullanımdan kaldırıldı.

Etiket Türü: Profile Özel Öğe Türü: Herhangi Bir Yetki: İsteğe Bağlı

@171

 @171

Ayırt edici konu kimlikleri.

İlgilenilen üç farklı konu kimliği vardır ve bunların üçü de "yayıncıya özel" olarak biçimlendirilir.

Özellikler
kAnyTopicId

Bu, joker karakterli konu kimliği olarak ayrılmıştır.

kTopicIdNotSpecified

Bu, geçersiz veya joker karakterli bir konu kimliğini ifade etmek için ayrılmış özel bir değerdir.

kTopicIdPublisherSpecificMask

Bu, bir topci kimliği oluşturmak veya ayrıştırmak için maske olarak kullanılır.

WeaveTransportOption

 WeaveTransportOption

WDM aktarım seçenekleri.

Bunlar, WDM için karşılıklı olarak birbirini dışlayan aktarım seçenekleridir.

Özellikler
kTransport_TCP

Temel aktarım TCP'dir.

Bağlama işlemi, hizmet yöneticisi kullanılarak veya doğrudan mesaj katmanı kullanılarak tamamlanabilir.

kTransport_UDP

Temel aktarım yalnızca UDP'dir.

kTransport_WRMP

Temel aktarım sadece UDP'dir, ancak "uygulama destek katmanı" güvenilirlik iyileştirmeleri mevcuttur.

Türdefler

TopicIdentifier

uint64_t TopicIdentifier

Konu tanımlayıcısı.

Konu tanımlayıcıları, iki ilgili kullanım/anlam içeren 64 bitlik miktarlardır. Öncelikle, "Nest duman dedektörü" örneğinde olduğu gibi iyi bilinen bir dizi yol için geleneksel bir kısaltma olarak kullanılabilir. Bu şekilde kullanılan konu kimlikleri, profil tanımlayıcıları gibi, farklı tedarikçiler tarafından bağımsız olarak seçilen konu kimliklerinin birbiriyle çelişmesini önleyen aşağıdaki şekilde bir tedarikçi firma kodu içermelidir:

bit 48 - 63 0 - 47 bit
Satıcı kimliği Konu numarası
Konu tanımlayıcılarına ilişkin ikinci kullanım/anlam, bir WDM istemcisi ile yayıncı arasındaki dinamik abonelik durumunda ortaya çıkar. Bu durumda, yayıncı her zaman ilgili aboneliğin karşılık gelen benzersiz bir konu kimliği sağlamalı ve aboneliğin iyi bilinen bir konu kimliği veya rastgele bir yol listesi kullanılarak istenmesine bakılmaksızın bunu yapmalıdır. Bu formun konu tanımlayıcıları 0xFFFF sağlayıcı koduna sahip olarak ayırt edilir.

Şu makaleyi de inceleyebilirsiniz:
WeaveVendorIdentifiers.hpp

İşlevler

CheckTLVType

bool CheckTLVType(
  nl::Weave::TLV::TLVType aType,
  nl::Weave::TLV::TLVReader & aReader
)

Okunan bir TLV öğesinin beklenen TLV türüne sahip olduğundan emin olun.

Belirli bir TLV türünü, TLV okuyucusunun üst kısmındaki öğe türüyle karşılaştırarak kontrol edin.

Ayrıntılar
Parametreler
[in] aType
Belirli bir öğeye göre kontrol edilecek TLVType
[in] aReader
Kontrol edilecek öğede konumlandırılmış bir TLV okuyucuya referans
İadeler
öğenin TLVType değeri ve aType eşleşiyorsa true değerini alır.
Şu makaleyi de inceleyebilirsiniz:
WeaveTLVTypes.h

CheckWDMTag

bool CheckWDMTag(
  uint32_t aTagNum,
  nl::Weave::TLV::TLVReader & aReader
)

WDM'ye özel bir etiketi kontrol edin.

.../data-management/DMConstants.h adresindeki WDM'ye özgü etiketin numarasını TLV okuyucusunun başındaki gerçek etiketle karşılaştırarak kontrol edin.

Ayrıntılar
Parametreler
[in] aTagNum
Belirli bir TLV öğesiyle karşılaştırılacak olan etiket numarası.
[in] aReader
Kontrol edilecek öğeye işaret eden bir TLV okuyucuya başvuru.
İadeler
true iff aReader.GetTag(), belirtilen etiket numarası için beklenen etiket biçimlerinden biriyle eşleşen bir etiket üretir.

CloseDataListElement

WEAVE_ERROR CloseDataListElement(
  nl::Weave::TLV::TLVReader & aReader
)

WDM veri listesi öğesini okumayı durdurun.

Bu yöntem, söz konusu öğenin bir WDM veri listesinin parçası olduğunu varsayar ve bu nedenle kTLVType_Array öğesini ExitContainer() öğesine geçirir.

Ayrıntılar
Parametreler
[in,out] aReader
WDM veri listesi öğesine yerleştirilmiş bir TLV okuyucu.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, kapsayıcıdan çıkılamadığını yansıtan bir WEAVE_ERROR döndürülür.

CloseList

WEAVE_ERROR CloseList(
  nl::Weave::TLV::TLVReader & aReader
)

WDM yolunu veya veri listesini okumayı durdurun.

Bu yöntem, söz konusu listenin en üstteki TLV öğesi olduğunu varsayar ve bu nedenle kTLVType_Sructure'ı ExitContainer() öğesine aktarır.

Ayrıntılar
Parametreler
[in,out] aReader
Bir WDM yoluna veya veri listesine yerleştirilmiş bir TLV okuyucu.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, kapsayıcıdan çıkılamadığını yansıtan bir WEAVE_ERROR döndürülür.

EncodeDeprecatedPath

WEAVE_ERROR EncodeDeprecatedPath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const uint64_t & aInstanceId,
  uint32_t aPathLen,
  ...
)

Kullanımdan kaldırılmış etiketler ve tam sayı örnek kimliği ile bir WDM yolu kodlayın.

Not: Weave 2.0 sürümünden önce, hizmet tarafından kabul edilen desteği sonlandırılmış etiket grubunu kullanarak bir yolu kodlayın. Yöntemin bu sürümü, sayısal bir örnek tanımlayıcısı alır. Bu yöntem, ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfile) ile bir kapsayıcı başlatır ve ardından ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileId_ yaklaşık) ile profil kimliğini ekler. Ardından, örnek kimliğini ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileInstance_Usage) ile ekler. Bu, yol kodlama için desteği sonlandırılmış sürümlerden biridir. Yeni tasarımlarda bu biçim kullanılmamalıdır.

Ayrıntılar
Parametreler
[in] aWriter
Yolu yazmak için kullanılan TLV yazarına yapılan bir referans.
[in] aTag
Bu yol için geçerli olan tam nitelikli TLV etiketine referans.
[in] aProfileId
Yol öğelerinin yorumlanacağı profil kimliği.
[in] aInstanceId
Kullanılacak profilin isteğe bağlı örnek kimliğine referans.
[in] aPathLen
Yol öğeleri listesinin ilk profil belirleyicisinin ötesindeki (büyük olasılıkla 0) uzunluğu.
[in] ...
Ek yol etiketlerinin isteğe bağlı değişken uzunluktaki listesi.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, belirtilen yolun biçimlendirilemediğini yansıtan bir WEAVE_ERROR döndürülür.

EncodeDeprecatedPath

WEAVE_ERROR EncodeDeprecatedPath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const char *aInstanceId,
  uint32_t aPathLen,
  ...
)

Kullanımdan kaldırılmış etiketler ve dize örneği kimliği içeren bir WDM yolu kodlayın.

Not: Kullanımdan kaldırılan etiket grubunu kullanarak bir yolu kodlayın (bkz. DMConstants.h). Yöntemin bu sürümü bir örnek kimliği dizesi alıyor. Bu yöntem, ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfile) ile bir kapsayıcı başlatır ve ardından ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileId_ yaklaşık) ile profil kimliğini ekler. Ardından, örnek kimliğini ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileInstance_Usage) ile ekler. Bu, yol kodlama için desteği sonlandırılmış sürümlerden biridir. Yeni tasarımlarda bu biçim kullanılmamalıdır.

Ayrıntılar
Parametreler
[in] aWriter
Yolu yazmak için kullanılan TLV yazarına yapılan bir referans.
[in] aTag
Bu yol için geçerli olan tam nitelikli TLV etiketine referans.
[in] aProfileId
Yol öğelerinin yorumlanacağı profil kimliği.
[in] aInstanceId
Profil örneği tanımlayıcısı olarak kullanılan isteğe bağlı dize. Örnek kimliği belirtilmediyse bu bağımsız değişken NULL olabilir.
[in] aPathLen
Yol öğeleri listesinin ilk profil belirleyicisinin ötesindeki (büyük olasılıkla 0) uzunluğu.
[in] ...
Ek yol etiketlerinin isteğe bağlı, değişken uzunluktaki listesi.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, belirtilen yolun biçimlendirilemediğini yansıtan bir WEAVE_ERROR döndürülür.

EncodePath

WEAVE_ERROR EncodePath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const uint64_t & aInstanceId,
  uint32_t aPathLen,
  ...
)

WDM yolunu tam sayı profil örnek kimliğiyle kodlayın.

Not: Özellikle sonraki yol öğelerinin yorumlanmasına olanak tanımak için başa bir profil tanımlaması yerleştirilmiş, veri yönetiminde kullanılan türde bir TLV yolu yazın. Yöntemin bu sürümü, bir tam sayı profil örnek kimliği alır.

Bu yöntem, bir yolu kodlamanın en son sürümü olan ContextTag(kTag_WDMPathProfileInstance) yöntemini kullanarak örnek kimliğini ekler.

Ayrıntılar
Parametreler
[in] aWriter
Yolu yazmak için kullanılan TLV yazarına yapılan bir referans.
[in] aTag
Bu yol için geçerli olan tam nitelikli TLV etiketine referans.
[in] aProfileId
Yol öğelerinin yorumlanacağı profil kimliği.
[in] aInstanceId
Kullanılacak profilin isteğe bağlı örnek tanımlayıcısı. Kullanılacak örnek kimliği yoksa bu parametre kInstanceIdNotSpecified değerine sahip olmalıdır.
[in] aPathLen
Yol öğeleri listesinin ilk profil belirleyicisinin ötesindeki (büyük olasılıkla 0) uzunluğu.
[in] ...
Ek yol etiketlerinin isteğe bağlı değişken uzunluktaki listesi.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, belirtilen yolun biçimlendirilemediğini yansıtan bir WEAVE_ERROR döndürülür.

EncodePath

WEAVE_ERROR EncodePath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const uint32_t aInstanceIdLen,
  const uint8_t *aInstanceId,
  uint32_t aPathLen,
  ...
)

WDM yolunu bayt dizisi örnek kimliğiyle kodlayın.

Not: Özellikle sonraki yol öğelerinin yorumlanmasına olanak tanımak için başa bir profil tanımlaması yerleştirilmiş, veri yönetiminde kullanılan türde bir TLV yolu yazın. Yöntemin bu sürümü, uzunlukla birlikte bir bayt dizisi profili örnek kimliği alır.

Bu yöntem, bir yolu kodlamanın en son sürümü olan ContextTag(kTag_WDMPathProfileInstance) yöntemini kullanarak örnek kimliğini ekler.

Ayrıntılar
Parametreler
[in] aWriter
Yolu yazmak için kullanılan TLV yazarına yapılan bir referans.
[in] aTag
Bu yol için geçerli olan tam nitelikli TLV etiketine referans.
[in] aProfileId
Yol öğelerinin yorumlanacağı profil kimliği.
[in] aInstanceIdLen
Örnek kimliğini oluşturan bayt dizisinin uzunluğu. Kimlik yoksa bu parametre 0 değerine sahip olmalıdır.
[in] aInstanceId
Profil örneği tanımlayıcısı olarak kullanılan isteğe bağlı bayt dizisi. Örnek kimliğinin belirtilmediği durumlarda bu bağımsız değişken NULL olabilir.
[in] aPathLen
Yol öğeleri listesinin ilk profil belirleyicisinin ötesindeki (büyük olasılıkla 0) uzunluğu.
[in] ...
Ek yol etiketlerinin isteğe bağlı, değişken uzunluktaki listesi.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, belirtilen yolun biçimlendirilemediğini yansıtan bir WEAVE_ERROR döndürülür.

EncodePath

WEAVE_ERROR EncodePath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const char *aInstanceId,
  uint32_t aPathLen,
  ...
)

WDM yolunu dize örnek kimliği ile kodlayın.

Not: Özellikle sonraki yol öğelerinin yorumlanmasına olanak tanımak için başa bir profil tanımlaması yerleştirilmiş, veri yönetiminde kullanılan türde bir TLV yolu yazın. Yöntemin bu sürümü bir dize profili örnek kimliği alır.

Bu yöntem, bir yolu kodlamanın en son sürümü olan ContextTag(kTag_WDMPathProfileInstance) yöntemini kullanarak örnek kimliğini ekler.

Ayrıntılar
Parametreler
[in] aWriter
Yolu yazmak için kullanılan TLV yazarına yapılan bir referans.
[in] aTag
Bu yol için geçerli olan tam nitelikli TLV etiketine referans.
[in] aProfileId
Yol öğelerinin yorumlanacağı profil kimliği.
[in] aInstanceId
Profil örneği tanımlayıcısı olarak kullanılan isteğe bağlı dize. Örnek kimliği belirtilmediyse bu bağımsız değişken NULL olabilir.
[in] aPathLen
Yol öğeleri listesinin ilk profil belirleyicisinin ötesindeki (büyük olasılıkla 0) uzunluğu.
[in] ...
Ek yol etiketlerinin isteğe bağlı, değişken uzunluktaki listesi.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, belirtilen yolun biçimlendirilemediğini yansıtan bir WEAVE_ERROR döndürülür.

EndDataListElement

WEAVE_ERROR EndDataListElement(
  nl::Weave::TLV::TLVWriter & aWriter
)

Veri listesi öğesi yazmayı bitirin.

Bir WDM veri listesi öğesinin sonuna ait TLV'yi yazın. Bunun, bir liste öğesini sürekli kapattığımız varsayılarak EndContainer() çağrısına otomatik olarak bir kTLVType_Array türünde aktarıldığını unutmayın.

Ayrıntılar
Parametreler
[in] aWriter
Öğenin sonunu yazmak için bir TLV yazarına yapılan referans.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, kapsayıcıyı sona erdirememe durumunu yansıtan bir WEAVE_ERROR döndürülür.

EndEncodePath

WEAVE_ERROR EndEncodePath(
  TLVWriter & aWriter,
  TLVType & mOuterContainer,
  WEAVE_ERROR mError
)

EndList

WEAVE_ERROR EndList(
  nl::Weave::TLV::TLVWriter & aWriter
)

Yol listesi veya veri listesi yazmayı bitirin.

Bir WDM yolunun veya veri listesinin sonu için TLV'yi yazın. Ayrıca, yazarın şarkısını son haline getirin.

Ayrıntılar
Parametreler
[in,out] aWriter
Listenin sonunu yazmak için bir TLV yazarına referans.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, kapsayıcıyı sona erdirememe durumunu yansıtan bir WEAVE_ERROR döndürülür.

EndList

WEAVE_ERROR EndList(
  ReferencedTLVData & aList,
  nl::Weave::TLV::TLVWriter & aWriter
)

Yol listesi veya veri listesi yazmayı bitirin.

Bir WDM yolunun veya veri listesinin sonu için TLV'yi yazın. Ayrıca, yazarın şarkısını son haline getirin. Bu durumda, TLV'nin yazıldığı ReferencedTLVData nesnesi aktarılır ve yazılan veri miktarını yansıtacak şekilde değiştirilir.

Ayrıntılar
Parametreler
[in,out] aList
Listenin yazıldığı ReferenceTLVData nesnesine başvuru.
[in] aWriter
Listenin sonunu yazmak için bir TLV yazarına referans.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, kapsayıcıyı sona erdirememe durumunu yansıtan bir WEAVE_ERROR döndürülür.

IsPublisherSpecific

bool IsPublisherSpecific(
  const TopicIdentifier & aTopicId
)

Konu kimliğinin yayıncıya özel olup olmadığını kontrol edin.

Ayrıntılar
Parametreler
[in] aTopicId
konu tanımlayıcısı kontrol etme
İadeler
Konu kimliği yayıncıya özelse true (doğru), değilse yanlış (false)

OpenDataList

WEAVE_ERROR OpenDataList(
  ReferencedTLVData & aDataList,
  nl::Weave::TLV::TLVReader & aReader
)

Veri listesini okumaya başlayın.

Yeni bir okuyucu ve veri listesi göz önüne alındığında, listeyi okumaya başlayın ve işlemin ilk aşamasında karşılaşılan etiketleri ve türleri doğrulayın. Her şey yolunda giderse liste kapsayıcısı girildikten sonra okuyucu durur.

Ayrıntılar
Parametreler
[in] aDataList
ReferencedTLVData nesnesine referans olarak iletilen veri listesi. Normal kullanım alanında, liste teslim alındıktan sonra hâlâ bir tampon durumundadır.
[out] aReader
Veri listesini okumak için kullanılan bir TLV okuyucuya referans. Bu okuyucu, listedeki ilk öğenin hemen önüne işaret edecek şekilde bırakılacaktır.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, veri listesini açtıktan ve/veya ilgili etiketleri ve türleri doğruladığınızda hatayı yansıtan bir WEAVE_ERROR döndürülür.

OpenDataListElement

WEAVE_ERROR OpenDataListElement(
  nl::Weave::TLV::TLVReader & aReader,
  nl::Weave::TLV::TLVReader & aPathReader,
  uint64_t & aVersion
)

Bir veri listesi öğesini okumaya başlayın.

Bir veri listesi öğesine konumlandırılmış bir okuyucuya göre öğeyi okumaya başlayın ve işlemin ilk aşamasında karşılaşılan etiketleri ve türleri doğrulayın. Her şey yolunda giderse okuyucu veri öğesi verilerine, giriş/çıkış yolu okuyucusu ise karşılık gelen yola yerleştirilir.

Ayrıntılar
Parametreler
[in] aReader
Bir veri listesi öğesine yerleştirilmiş bir TLV okuyucuya referans.
[out] aPathReader
Veri listesi öğesinin yol bileşenine işaret edecek bir TLV okuyucu referansı.
[out] aVersion
Varsa veri listesi öğesi sürümüne veya kVersionNotSpecified sürümüne ayarlanacak 64 bitlik bir tam sayı için başvuru.
İadeler
Başarılı olduğunda WEAVE_NO_ERROR veya veri listesi öğesinin açılması ve okunmasıyla ilişkili bir WEAVE_ERROR.

OpenPathList

WEAVE_ERROR OpenPathList(
  ReferencedTLVData & aPathList,
  nl::Weave::TLV::TLVReader & aReader
)

Yol listesini okumaya başlayın.

Yeni bir okuyucu ve yol listesi göz önünde bulundurulduğunda, listeyi okumaya başlayın ve işlemin ilk aşamasında karşılaşılan etiketleri ve türleri doğrulayın. Her şey yolunda giderse liste kapsayıcısı girildikten sonra okuyucu durur.

Ayrıntılar
Parametreler
[in] aPathList
ReferencedTLVData nesnesine referans olarak iletilen yol listesi. Normal kullanım alanında, liste teslim alındıktan sonra hâlâ bir tampon durumundadır.
[out] aReader
Yol listesini okumak için kullanılan bir TLV okuyucusuna referans. Bu okuyucu, listedeki ilk yolun hemen öncesini gösterecek şekilde bırakılacaktır.
İadeler
Başarılı olduğunda WEAVE_NO_ERROR; aksi takdirde, hata olduğunu gösteren bir WEAVE_ERROR, yol listesinin açılması ve/veya ilgili etiketler ve türlerin doğrulanması.

PublisherSpecificTopicId

TopicIdentifier PublisherSpecificTopicId(
  void
)

Sıfırdan yayıncıya özel bir konu kimliği oluşturun.

Ayrıntılar
İadeler
yeni konu tanımlayıcısını kullanabilirsiniz.

SendStatusReport

WEAVE_ERROR SendStatusReport(
  ExchangeContext *aExchangeCtx,
  StatusReport & aStatus
)

StartDataList

WEAVE_ERROR StartDataList(
  nl::Weave::TLV::TLVWriter & aWriter
)

Veri listesi yazmaya başlayın.

Bir WDM veri listesinin başlangıcı için TLV'yi yazın (ör. UpdateRequest() için birincil bağımsız değişken olarak).

Ayrıntılar
Parametreler
[in] aWriter
Yazmaya başlamak için bir TLV yazarına referans.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, kapsayıcı başlatılamadığını yansıtan bir WEAVE_ERROR döndürülür.

StartDataList

WEAVE_ERROR StartDataList(
  ReferencedTLVData & aDataList,
  nl::Weave::TLV::TLVWriter & aWriter
)

Belirli bir ReferencedTLVData nesnesine veri listesi yazmaya başlayın.

WDM veri listesinin başlangıcı için TLV'yi yazın. Bu durumda, veri listesini referans verilen bir TLV veri yapısına yazdığınızı varsayıyoruz. Yazarın başlatılmamış olduğu varsayılır veya her durumda, belirtilen nesneye işaret edecek şekilde başlatılır.

Ayrıntılar
Parametreler
[out] aDataList
Yazarın hedefi olacak ve sonunda ilgilenilen verileri içerecek bir ReferencedTLVData nesnesine referans.
[in] aWriter
Yazmaya başlamak için bir TLV yazarına referans.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, kapsayıcı başlatılamadığını yansıtan bir WEAVE_ERROR döndürülür.

StartDataListElement

WEAVE_ERROR StartDataListElement(
  nl::Weave::TLV::TLVWriter & aWriter
)

Bir veri listesi öğesi yazmaya başlayın.

Bir WDM veri listesi öğesinin başlangıcı için TLV'yi yazın.

Ayrıntılar
Parametreler
[in] aWriter
Yazmaya başlamak için bir TLV yazarına referans.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, kapsayıcı başlatılamadığını yansıtan bir WEAVE_ERROR döndürülür.

StartEncodePath

WEAVE_ERROR StartEncodePath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  TLVType & mOuterContainer,
  TLVType & mPath
)

StartPathList

WEAVE_ERROR StartPathList(
  nl::Weave::TLV::TLVWriter & aWriter
)

Yol listesi yazmaya başlayın.

Bir WDM yol listesinin başlangıcı için TLV'yi yazın (ör. ViewRequest() için birincil bağımsız değişken olarak).

Ayrıntılar
Parametreler
[in] aWriter
Yazmaya başlamak için bir TLV yazarına referans.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, kapsayıcı başlatılamadığını yansıtan bir WEAVE_ERROR döndürülür.

TxnResponseHandler

void TxnResponseHandler(
  ExchangeContext *anExchangeCtx,
  const IPPacketInfo *anAddrInfo,
  const WeaveMessageInfo *aMsgInfo,
  uint32_t aProfileId,
  uint8_t aMsgType,
  PacketBuffer *aMsg
)

TxnTimeoutHandler

void TxnTimeoutHandler(
  ExchangeContext *anExchangeCtx
)

ValidateTLVType

WEAVE_ERROR ValidateTLVType(
  nl::Weave::TLV::TLVType aType,
  nl::Weave::TLV::TLVReader & aReader
)

Okunmakta olan bir TLV öğesinin beklenen TLV türüne sahip olduğunu doğrulayın.

Belirli bir TLV türünü, TLV okuyucunun üst kısmındaki öğe türüyle karşılaştırarak kontrol edin ve eşleşme yoksa hata döndürün.

Ayrıntılar
Parametreler
[in] aType
Belirli bir öğeye göre doğrulanacak TLVType.
[in] aReader
Doğrulanacak öğede konumlandırılmış bir TLV okuyucuya referans.
İadeler
Eşleşme varsa WEAVE_NO_ERROR, değilse WEAVE_ERROR_WRONG_TLV_TYPE.
Şu makaleyi de inceleyebilirsiniz:
WeaveTLVTypes.h

ValidateWDMTag

WEAVE_ERROR ValidateWDMTag(
  uint32_t aTagNum,
  nl::Weave::TLV::TLVReader & aReader
)

Okunmakta olan bir TLV öğesinin beklenen WDM etiketine sahip olduğunu doğrulayın.

Ayrıntılar
Parametreler
[in] aTagNum
Beklenen WDM etiketinin 32 bit etiket numarası.
[in] aReader
Doğrulanacak öğeye konumlandırılmış bir TLV okuyucu.
İadeler
WEAVE_NO_ERROR Başarılı olursa. Aksi takdirde, etiket, WDM etiketi olarak yorumlandığında verilen etiket numarasıyla eşleşmiyorsa WEAVE_ERROR_INVALID_TLV_TAG.