nl::Weave::Profiles::DataManagement_Legacy

Ta przestrzeń nazw zawiera wszystkie interfejsy Weave w profilu Weave Data Management (WDM), który wkrótce zostanie wycofany.

Podsumowanie

Wyliczenia

@103{
  kStatus_CancelSuccess = 0x0001,
  kStatus_InvalidPath = 0x0013,
  kStatus_UnknownTopic = 0x0014,
  kStatus_IllegalReadRequest = 0x0015,
  kStatus_IllegalWriteRequest = 0x0016,
  kStatus_InvalidVersion = 0x0017,
  kStatus_UnsupportedSubscriptionMode = 0x0018
}
enum | typ wyliczeniowy
@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 | typ wyliczeniowy
Rozmiary puli i tabel WDM.
@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 | typ wyliczeniowy
Typy komunikatów profilu WDM.
@168{
  kTransactionIdNotSpecified = 0,
  kResponseTimeoutNotSpecified = 0,
  kVersionNotSpecified = 0xFFFFFFFFFFFFFFFFULL,
  kInstanceIdNotSpecified = 0,
  kDefaultBindingTableIndex = 0,
  kWeaveTLVTagLen = 8,
  kWeaveTLVControlByteLen = 1
}
enum | typ wyliczeniowy
Różne stałe specyficzne dla WDM.
@169{
  kStatus_CancelSuccess = 0x0001,
  kStatus_InvalidPath = 0x0013,
  kStatus_UnknownTopic = 0x0014,
  kStatus_IllegalReadRequest = 0x0015,
  kStatus_IllegalWriteRequest = 0x0016,
  kStatus_InvalidVersion = 0x0017,
  kStatus_UnsupportedSubscriptionMode = 0x0018
}
enum | typ wyliczeniowy
Kody stanu specyficzne dla WDM.
@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 | typ wyliczeniowy
Tagi protokołu zarządzania danymi.
@171{
  kTopicIdPublisherSpecificMask = 0xFFFF000000000000ULL,
  kTopicIdNotSpecified = 0x0000000000000000ULL,
  kAnyTopicId = 0xFFFFFFFFFFFFFFFFULL
}
enum | typ wyliczeniowy
Wyróżniające się identyfikatory tematów.
WeaveTransportOption{
  kTransport_TCP = 1,
  kTransport_WRMP = 2,
  kTransport_UDP = 3
}
enum | typ wyliczeniowy
Opcje transportu WDM.

Definiuje typ

TopicIdentifier typedef
uint64_t
Identyfikator tematu.

Funkcje

CheckTLVType(nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader)
bool
Sprawdź, czy odczytywany element TLV ma oczekiwany typ TLV.
CheckWDMTag(uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader)
bool
Sprawdź tag WDM.
CloseDataListElement(nl::Weave::TLV::TLVReader & aReader)
Przestań odczytywać element listy danych WDM.
CloseList(nl::Weave::TLV::TLVReader & aReader)
Zatrzymaj odczytywanie ścieżki lub listy danych WDM.
EncodeDeprecatedPath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ...)
Zakoduj ścieżkę WDM przy użyciu wycofanych tagów i identyfikatora instancji w postaci liczby całkowitej.
EncodeDeprecatedPath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
Zakoduj ścieżkę WDM z wycofanymi tagami i identyfikatorem instancji w postaci ciągu znaków.
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ...)
Zakoduj ścieżkę WDM identyfikatorem instancji profilu w postaci liczby całkowitej.
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint32_t aInstanceIdLen, const uint8_t *aInstanceId, uint32_t aPathLen, ...)
Zakoduj ścieżkę WDM, używając identyfikatora instancji tablicy bajtów.
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
Zakoduj ścieżkę WDM, używając identyfikatora instancji ciągu znaków.
EndDataListElement(nl::Weave::TLV::TLVWriter & aWriter)
Zakończ zapisywanie elementu listy danych.
EndEncodePath(TLVWriter & aWriter, TLVType & mOuterContainer, WEAVE_ERROR mError)
EndList(nl::Weave::TLV::TLVWriter & aWriter)
Zakończ zapisywanie listy ścieżek lub listy danych.
EndList(ReferencedTLVData & aList, nl::Weave::TLV::TLVWriter & aWriter)
Zakończ zapisywanie listy ścieżek lub listy danych.
IsPublisherSpecific(const TopicIdentifier & aTopicId)
bool
Sprawdź, czy identyfikator tematu jest przypisany do wydawcy.
OpenDataList(ReferencedTLVData & aDataList, nl::Weave::TLV::TLVReader & aReader)
Zacznij odczytywać listę danych.
OpenDataListElement(nl::Weave::TLV::TLVReader & aReader, nl::Weave::TLV::TLVReader & aPathReader, uint64_t & aVersion)
Zacznij odczytywać element listy danych.
OpenPathList(ReferencedTLVData & aPathList, nl::Weave::TLV::TLVReader & aReader)
Zacznij odczytywać listę ścieżek.
PublisherSpecificTopicId(void)
Wygeneruj od zera identyfikator tematu specyficzny dla wydawcy.
SendStatusReport(ExchangeContext *aExchangeCtx, StatusReport & aStatus)
StartDataList(nl::Weave::TLV::TLVWriter & aWriter)
Zacznij tworzyć listę danych.
StartDataList(ReferencedTLVData & aDataList, nl::Weave::TLV::TLVWriter & aWriter)
Zacznij zapisywać listę danych do danego obiektu ReferencedTLVData.
StartDataListElement(nl::Weave::TLV::TLVWriter & aWriter)
Zacznij zapisywać element listy danych.
StartEncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, TLVType & mOuterContainer, TLVType & mPath)
StartPathList(nl::Weave::TLV::TLVWriter & aWriter)
Zacznij tworzyć listę ścieżek.
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)
Sprawdź, czy odczytywany element TLV ma oczekiwany typ TLV.
ValidateWDMTag(uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader)
Sprawdź, czy odczytywany element TLV ma oczekiwany tag WDM.

Zajęcia

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

Klasa Binding służy do zarządzania stanem komunikacji w imieniu podmiotu aplikacji za pomocą Weave.

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

Klasa abstrakcyjna zawierająca definicje metody potwierdzania i wskazania wymagane przez klienta WDM.

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

Klasa pomocnicza wykorzystywana, gdy w kliencie WDM wymagana jest obsługa subskrypcji i powiadomień.

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

Abstrakcyjna klasa bazowa dla klientów WDM specyficznych dla aplikacji.

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

Abstrakcyjna klasa bazowa dla wydawców WDM specyficznych dla aplikacji.

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

Abstrakcyjna klasa pomocnicza ProfileDatabase.

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

Klasa silnika protokołu WDM.

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

Klasa abstrakcyjna zawierająca definicje metody potwierdzenia i powiadomienia wymagane przez wydawcę WDM.

Wyliczenia

@103

 @103
Właściwości
kStatus_CancelSuccess

Ten starszy kod stanu oznacza, że subskrypcja została anulowana.

Ten kod stanu oznacza, że subskrypcja została anulowana.

kStatus_IllegalReadRequest

Ten starszy kod stanu oznacza, że węzeł wysyłający żądanie odczytu określonego elementu danych nie ma do tego uprawnień.

Ten kod stanu oznacza, że węzeł wysyłający żądanie odczytu określonego elementu danych nie ma do tego uprawnień.

kStatus_IllegalWriteRequest

Ten starszy kod stanu oznacza, że węzeł wysyłający żądanie zapisu określonego elementu danych nie ma do tego uprawnień.

Ten kod stanu oznacza, że węzeł wysyłający żądanie zapisu konkretnego elementu danych nie ma do tego uprawnień.

kStatus_InvalidPath

Ten starszy kod stanu oznacza, że ścieżka z listy ścieżek ramki widoku lub aktualizacji nie pasuje do schematu rezydentnego węzła odpowiadającego.

Ten kod stanu oznacza, że ścieżka z listy ścieżek ramki widoku lub aktualizacji nie pasuje do schematu rezydentnego węzła odpowiadającego.

kStatus_InvalidVersion

Ten starszy kod stanu oznacza, że wersja danych uwzględnionych w żądaniu aktualizacji nie jest zgodna z najnowszą wersją u wydawcy, więc aktualizacja nie może zostać zastosowana.

Ten kod stanu oznacza, że wersja danych uwzględnionych w żądaniu aktualizacji nie jest zgodna z najnowszą wersją u wydawcy i w związku z tym aktualizacja nie może zostać zastosowana.

kStatus_UnknownTopic

Ten starszy kod stanu oznacza, że identyfikator tematu podany w żądaniu anulowania lub w powiadomieniu nie pasuje do żadnej subskrypcji w węźle odbierającym.

Ten kod stanu oznacza, że identyfikator tematu podany w żądaniu anulowania lub w powiadomieniu nie pasuje do żadnej subskrypcji w węźle odbierającym.

kStatus_UnsupportedSubscriptionMode

Ten starszy kod stanu oznacza, że żądany tryb subskrypcji nie jest obsługiwany przez urządzenie odbierające.

Ten kod stanu oznacza, że żądany tryb subskrypcji nie jest obsługiwany przez urządzenie odbierające.

@166

 @166

Rozmiary puli i tabel WDM.

WDM definiuje różne pule i tabele wymagane do jego działania w następujący sposób.

Pule transakcji klientów:

  • kViewPoolSize
  • kSubscribePoolSize
  • kCancelSubscriptionPoolSize
  • kUpdatePoolSize

Pule transakcji wydawcy:

  • kNotifyPoolSize

Tabele mechanizmu protokołów:

  • kTransactionTableSize
  • kBindingTableSize

Tabele dotyczące subskrypcji:

  • kNotifierTableSize (tylko klient)
  • kSubscriptionMgrTableSize (tylko wydawca)

Pamiętaj, że są to liczby, które można skonfigurować, a wartości z poszczególnych platform pojawiają się w powiązanym pliku WeaveConfig.h.

Właściwości
kBindingTableSize

To jest domyślny rozmiar tabeli powiązań w mechanizmie protokołów WDM.

Tę wartość można skonfigurować w ustawieniu WEAVE_CONFIG_WDM_BINDING_TABLE_SIZE.

kCancelSubscriptionPoolSize

To jest domyślny rozmiar puli transakcji żądań anulowania subskrypcji dla klienta WDM.

Tę wartość można skonfigurować za pomocą metody WEAVE_CONFIG_WDM_CANCEL_SUBSCRIPTION_POOL_SIZE.

kNotifierTableSize

To jest domyślny rozmiar tabeli powiadomień dla klientów WDM.

Tę wartość można skonfigurować w ustawieniu WEAVE_CONFIG_WDM_NOTIFIER_TABLE_SIZE.

kNotifyPoolSize

To jest domyślny rozmiar puli transakcji żądania powiadomienia dla wydawcy WDM.

Tę wartość można skonfigurować w polu WEAVE_CONFIG_WDM_NOTIFY_POOL_SIZE.

kSubscribePoolSize

To jest domyślny rozmiar puli transakcji żądań subskrypcji dla klienta WDM.

Ta wartość może być skonfigurowana jako WEAVE_CONFIG_WDM_SUBSCRIBE_POOL_SIZE.

kSubscriptionMgrTableSize

To jest domyślny rozmiar tabeli subskrypcji dla wydawców WDM.

Ta wartość może być skonfigurowana jako WEAVE_CONFIG_WDM_SUBSCRIPTION_MGR_TABLE_SIZE.

kTransactionTableSize

To jest domyślny rozmiar tabeli transakcji w mechanizmie protokołów WDM.

Tę wartość można skonfigurować za pomocą metody WEAVE_CONFIG_WDM_TRANSACTION_TABLE_SIZE.

kUpdatePoolSize

To jest domyślny rozmiar puli transakcji żądań aktualizacji dla klienta WDM.

Ta wartość może być skonfigurowana jako WEAVE_CONFIG_WDM_UPDATE_POOL_SIZE.

kViewPoolSize

To jest domyślny rozmiar puli transakcji żądania wyświetlenia dla klienta WDM.

Ta wartość może być skonfigurowana jako WEAVE_CONFIG_WDM_VIEW_POOL_SIZE.

@167

 @167

Typy komunikatów profilu WDM.

Wartości te są wywoływane w specyfikacji zarządzania danymi.

UWAGA!! Od pierwszego kwartału 2015 r. typy wiadomości używane w poprzednich wersjach WDM zostały wycofane i zdefiniowano nowe typy wiadomości. Wynika to z odpowiedniej zmiany w zakresie wcześniejszego pakowania i analizowania danych, która uzasadnia potrzebną przerwę.

Właściwości
kMsgType_CancelSubscriptionRequest

Wiadomość o anulowaniu prośby o subskrypcję.

kMsgType_CancelSubscriptionRequest_Deprecated

wycofano

kMsgType_NotifyRequest

Powiadom wiadomość z prośbą.

kMsgType_NotifyRequest_Deprecated

wycofano

kMsgType_SubscribeRequest

Wiadomość z prośbą o subskrypcję.

kMsgType_SubscribeRequest_Deprecated

wycofano

kMsgType_SubscribeResponse

Subskrybuj wiadomość z odpowiedzią.

kMsgType_SubscribeResponse_Deprecated

wycofano

kMsgType_UpdateRequest

Zaktualizuj wiadomość z prośbą o aktualizację.

kMsgType_UpdateRequest_Deprecated

wycofano

kMsgType_ViewRequest

Wyświetl wiadomość z prośbą.

kMsgType_ViewRequest_Deprecated

wycofano

kMsgType_ViewResponse

Wyświetl wiadomość z odpowiedzią.

kMsgType_ViewResponse_Deprecated

wycofano

@168

 @168

Różne stałe specyficzne dla WDM.

Właściwości
kDefaultBindingTableIndex

Indeks domyślnego powiązania w tabeli powiązań mechanizmu protokołów z więcej niż 1 wpisem.

kInstanceIdNotSpecified

W wywołaniach wymagających specyfikacji instancji profilu wskazuje „none” (brak).

Najczęściej oznacza to, że dany podmiot zawiera tylko jedno wystąpienie profilu.

kResponseTimeoutNotSpecified

W metodach wysyłania żądań transakcji wskazuje, że osoba wywołująca odmówiła określenia limitu czasu.

Oznacza to, że należy użyć wartości domyślnej.

kTransactionIdNotSpecified

W metodach i strukturach danych, które przyjmują identyfikator transakcji, wskazuje wartość „none” (brak) lub wartość wieloznaczną.

kVersionNotSpecified

W wywołaniach wymagających specyfikacji wersji danych wskazuje „brak konkretnej wersji”.

kWeaveTLVControlByteLen

Długość bajtu kontrolnego TLV używanego w metodach pomocy do kodowania struktur WDM w TLV.

kWeaveTLVTagLen

Standardowa długość w bajtach w pełni kwalifikowanego tagu TLV używanego w metodach pomocy do kodowania struktur WDM w TLV.

@169

 @169

Kody stanu specyficzne dla WDM.

Właściwości
kStatus_CancelSuccess

Ten starszy kod stanu oznacza, że subskrypcja została anulowana.

Ten kod stanu oznacza, że subskrypcja została anulowana.

kStatus_IllegalReadRequest

Ten starszy kod stanu oznacza, że węzeł wysyłający żądanie odczytu określonego elementu danych nie ma do tego uprawnień.

Ten kod stanu oznacza, że węzeł wysyłający żądanie odczytu określonego elementu danych nie ma do tego uprawnień.

kStatus_IllegalWriteRequest

Ten starszy kod stanu oznacza, że węzeł wysyłający żądanie zapisu określonego elementu danych nie ma do tego uprawnień.

Ten kod stanu oznacza, że węzeł wysyłający żądanie zapisu konkretnego elementu danych nie ma do tego uprawnień.

kStatus_InvalidPath

Ten starszy kod stanu oznacza, że ścieżka z listy ścieżek ramki widoku lub aktualizacji nie pasuje do schematu rezydentnego węzła odpowiadającego.

Ten kod stanu oznacza, że ścieżka z listy ścieżek ramki widoku lub aktualizacji nie pasuje do schematu rezydentnego węzła odpowiadającego.

kStatus_InvalidVersion

Ten starszy kod stanu oznacza, że wersja danych uwzględnionych w żądaniu aktualizacji nie jest zgodna z najnowszą wersją u wydawcy, więc aktualizacja nie może zostać zastosowana.

Ten kod stanu oznacza, że wersja danych uwzględnionych w żądaniu aktualizacji nie jest zgodna z najnowszą wersją u wydawcy i w związku z tym aktualizacja nie może zostać zastosowana.

kStatus_UnknownTopic

Ten starszy kod stanu oznacza, że identyfikator tematu podany w żądaniu anulowania lub w powiadomieniu nie pasuje do żadnej subskrypcji w węźle odbierającym.

Ten kod stanu oznacza, że identyfikator tematu podany w żądaniu anulowania lub w powiadomieniu nie pasuje do żadnej subskrypcji w węźle odbierającym.

kStatus_UnsupportedSubscriptionMode

Ten starszy kod stanu oznacza, że żądany tryb subskrypcji nie jest obsługiwany przez urządzenie odbierające.

Ten kod stanu oznacza, że żądany tryb subskrypcji nie jest obsługiwany przez urządzenie odbierające.

@170

 @170

Tagi protokołu zarządzania danymi.

Protokół zarządzania danymi określa liczbę tagów, które będą używane do reprezentowania danych profilu przez TLV.

Jak zwykle występują problemy ze zgodnością między nową i starą wersją WDM. We dawnych czasach wszystkie te tagi były stosowane tylko do profilu profilu, co powodowało marnowanie miejsca. Teraz używamy tagów kontekstu tam, gdzie to możliwe, ale musimy zachować stare (i mieć mechanizm kodowania ścieżek z nimi) tam, gdzie jest to potrzebne.

Tag kTag_WDMDataListElementData nie był używany w poprzednich wersjach i został całkowicie zignorowany przez kod, dlatego nie musimy udostępniać wycofanej wersji.

Właściwości
kTag_WDMDataList

Element to lista struktur zawierających ścieżkę, wersję opcjonalną oraz elementy danych.

Typ tagu: Typ elementu specyficzny dla profilu: Dyspozycja tablicy: Najwyższy poziom

kTag_WDMDataListElementData

Element reprezentuje dane wskazywane przez daną ścieżkę i mające określoną wersję.

Typ tagu: Typ elementu zależny od kontekstu: Dowolny dyspozycja: wymagany

kTag_WDMDataListElementData_Deprecated

Rola wycofana.

Typ tagu: Typ elementu zależny od kontekstu: Dowolny dyspozycja: wymagany

kTag_WDMDataListElementPath

Element to komponent ścieżki elementu listy danych.

Typ tagu: Typ elementu zależnego od kontekstu: Dyspozycja ścieżki: wymagany

kTag_WDMDataListElementPath_Deprecated

Rola wycofana.

Typ tagu: Typ elementu właściwy dla profilu: Dyspozycja ścieżki: wymagany

kTag_WDMDataListElementVersion

Element to komponent wersji elementu listy danych.

Typ tagu: Typ elementu zależnego od kontekstu: Dyspozycja całkowita: wymagany

kTag_WDMDataListElementVersion_Deprecated

Rola wycofana.

Typ tagu: Typ elementu specyficzny dla profilu: Dyspozycja całkowita: wymagany

kTag_WDMPathArrayIndexSelector

Element ścieżki odpowiada tablicy w schemacie, a zawarty w niej element liczby całkowitej ma być używany jako indeks tej tablicy.

Typ tagu: Typ elementu specyficzny dla profilu: Dyspozycja całkowita: opcjonalny

kTag_WDMPathArrayValueSelector

Element ścieżki odpowiada tablicy w schemacie, a umieszczony element ma być używany jako selektor rekordów.

Typ tagu: Typ elementu właściwy dla profilu: Dyspozycja struktury: opcjonalny

kTag_WDMPathList

Element to lista ścieżek TLV.

Typ tagu: Typ elementu specyficzny dla profilu: Dyspozycja tablicy: Najwyższy poziom

kTag_WDMPathProfile

Element jest strukturą służącą do rozpoczęcia ścieżki i zawiera informacje o profilu, w świetle których mają być interpretowane tagi na ścieżce.

Typ tagu: Typ elementu właściwy dla profilu: Dyspozycja struktury: wymagany

kTag_WDMPathProfileId

Ten element jest komponentem identyfikatora profilu elementu profilu ścieżki, który zaczyna ścieżkę TLV.

Typ tagu: Typ elementu zależnego od kontekstu: Dyspozycja całkowita: wymagany

kTag_WDMPathProfileId_Deprecated

Rola wycofana.

Typ tagu: Typ elementu specyficzny dla profilu: Dyspozycja całkowita: wymagany

kTag_WDMPathProfileInstance

Elementem jest wystąpienie profilu, które może podążać za identyfikatorem profilu w ścieżce TLV.

Pamiętaj, że węzeł może, ale nie musi, mieć wiele wystąpień określonego profilu i, jeśli jest tylko jedno, element może zostać pominięty.

Typ tagu: zależny od kontekstu typ elementu: dowolna dyspozycja: opcjonalny

kTag_WDMPathProfileInstance_Deprecated

Rola wycofana.

Typ tagu: Typ elementu specyficzny dla profilu: Dowolny dyspozycja: opcjonalny

@171

 @171

Wyróżniające się identyfikatory tematów.

Istnieją 3 wyróżniające się identyfikatory interesujących tematów, z których wszystkie są sformatowane jako „specyficzne dla wydawcy”.

Właściwości
kAnyTopicId

Jest on zarezerwowany jako identyfikator tematu z symbolem wieloznacznym.

kTopicIdNotSpecified

Jest to wartość specjalna zarezerwowana do wyrażania nieprawidłowego lub oznaczonego symbolem identyfikatora tematu.

kTopicIdPublisherSpecificMask

Służy ona jako maska do tworzenia lub rozkładania identyfikatora topci.

WeaveTransportOption

 WeaveTransportOption

Opcje transportu WDM.

Są to wzajemnie wykluczające się opcje transportu w WDM.

Właściwości
kTransport_TCP

Bazowy system transportowy to TCP.

Powiązanie można ukończyć za pomocą menedżera usługi lub bezpośrednio za pomocą warstwy wiadomości.

kTransport_UDP

Podstawowym elementem transportu jest wyłącznie UDP.

kTransport_WRMP

bazowy system transportowy to wyłącznie UDP, ale z „warstwą obsługi aplikacji”. poprawa niezawodności.

Definiuje typ

TopicIdentifier

uint64_t TopicIdentifier

Identyfikator tematu.

Identyfikatory tematów to 64-bitowe ilości z 2 powiązanymi zastosowaniami lub semantyką. Po pierwsze mogą być stosowane jako konwencjonalny skrót dla dobrze znanego zestawu ścieżek, np. Czujnik dymu Nest”. Używane w ten sposób identyfikatory tematów, podobnie jak identyfikatory profili, powinny zawierać kod dostawcy, który zapobiega konfliktom identyfikatorów tematów wybieranym samodzielnie przez różnych dostawców w następujący sposób:

bit 48–63 bit 0–47
Identyfikator dostawcy Numer tematu
Drugie użycie/semantyka identyfikatorów tematów pojawia się w przypadku subskrypcji dynamicznej zawartej między klientem WDM a wydawcą. w takim przypadku wydawca zawsze powinien podawać unikalny identyfikator tematu odpowiadający konkretnej subskrypcji. Będzie to działać niezależnie od tego, czy prośba o subskrypcję została wysłana przy użyciu dobrze znanego identyfikatora tematu czy dowolnej listy ścieżek. identyfikatory tematów w tym formularzu różnią się kodem dostawcy 0xFFFF.

Zobacz też:
WeaveVendorIdentifiers.hpp

Funkcje

CheckTLVType

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

Sprawdź, czy odczytywany element TLV ma oczekiwany typ TLV.

Sprawdź typ TLV z typem elementu w nagłówku czytnika TLV.

Szczegóły
Parametry
[in] aType
Typ TLVType, który ma zostać sprawdzony pod kątem określonego elementu
[in] aReader
Odwołanie do czytnika TLV umieszczonego w elemencie, który ma zostać sprawdzony
Zwroty
true (prawda) w przypadku wartości TLVType elementu i dopasowania aType.
Zobacz też:
WeaveTLVTypes.h

CheckWDMTag

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

Sprawdź tag WDM.

Sprawdź numer tagu specyficznego dla WDM (z .../data-management/DMConstants.h) względem rzeczywistego tagu na początku czytnika TLV.

Szczegóły
Parametry
[in] aTagNum
Numer tagu, który ma zostać sprawdzony pod kątem określonego elementu TLV.
[in] aReader
Odwołanie do czytnika TLV wskazującego element, który ma zostać sprawdzony.
Zwroty
Parametr true iff aReader.GetTag() generuje tag, który pasuje do jednego z oczekiwanych formatów tagu dla danego numeru.

CloseDataListElement

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

Przestań odczytywać element listy danych WDM.

W tej metodzie przyjęto, że element, którego dotyczy problem, jest częścią listy danych WDM i przekazuje kTLVType_Array do ExitContainer().

Szczegóły
Parametry
[in,out] aReader
Czytnik TLV umieszczony w elemencie listy danych WDM.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR wskazujący na brak możliwości zamknięcia kontenera.

CloseList

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

Zatrzymaj odczytywanie ścieżki lub listy danych WDM.

Ta metoda zakłada, że dana lista jest najwyższym elementem TLV, więc przekazuje kTLVType_Sructure do ExitContainer().

Szczegóły
Parametry
[in,out] aReader
Czytnik TLV umieszczony w ścieżce lub na liście danych WDM.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR wskazujący na brak możliwości zamknięcia kontenera.

EncodeDeprecatedPath

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

Zakoduj ścieżkę WDM przy użyciu wycofanych tagów i identyfikatora instancji w postaci liczby całkowitej.

Uwaga: zakoduj ścieżkę, używając wycofanego zestawu tagów akceptowanego przez usługę przed wersją 2.0 Weave. Ta wersja metody przyjmuje numeryczny identyfikator instancji. Ta metoda uruchamia kontener za pomocą elementu ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfile), a następnie wstawia identyfikator profilu za pomocą parametru ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileId_legacy). Następnie wstawia identyfikator instancji z parametrem ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileInstance_Notify). Jest to jedna z wycofanych wersji kodowania ścieżki, a w nowych projektach nie należy używać tego formatu.

Szczegóły
Parametry
[in] aWriter
Odwołanie do zapisującego TLV użytego do zapisania ścieżki.
[in] aTag
Odniesienie do pełnego tagu TLV, który ma zastosowanie do tej ścieżki.
[in] aProfileId
Identyfikator profilu, w którym mają być interpretowane elementy ścieżki.
[in] aInstanceId
Odwołanie do opcjonalnego identyfikatora instancji profilu, który ma być używany.
[in] aPathLen
Długość listy elementów ścieżki (czasami 0) poza początkowym specyfikatorem profilu.
[in] ...
Opcjonalna lista zmiennych długości dodatkowych tagów ścieżki.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR wskazujący na brak możliwości sformatowania danej ścieżki.

EncodeDeprecatedPath

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

Zakoduj ścieżkę WDM z wycofanymi tagami i identyfikatorem instancji w postaci ciągu znaków.

Uwaga: zakoduj ścieżkę, korzystając z wycofanego zestawu tagów (patrz DMConstants.h). Ta wersja metody przyjmuje ciąg znaków identyfikatora instancji. Ta metoda uruchamia kontener za pomocą elementu ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfile), a następnie wstawia identyfikator profilu za pomocą parametru ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileId_legacy). Następnie wstawia identyfikator instancji z parametrem ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileInstance_Notify). Jest to jedna z wycofanych wersji kodowania ścieżki, a w nowych projektach nie należy używać tego formatu.

Szczegóły
Parametry
[in] aWriter
Odwołanie do zapisującego TLV użytego do zapisania ścieżki.
[in] aTag
Odniesienie do pełnego tagu TLV, który ma zastosowanie do tej ścieżki.
[in] aProfileId
Identyfikator profilu, w którym mają być interpretowane elementy ścieżki.
[in] aInstanceId
Opcjonalny ciąg znaków używany jako identyfikator instancji profilu. Jeśli nie podano identyfikatora instancji, ten argument może mieć wartość NULL.
[in] aPathLen
Długość listy elementów ścieżki (czasami 0) poza początkowym specyfikatorem profilu.
[in] ...
Opcjonalna lista tagów o zmiennej długości i dodatkowych tagów ścieżki.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR wskazujący na brak możliwości sformatowania danej ścieżki.

EncodePath

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

Zakoduj ścieżkę WDM identyfikatorem instancji profilu w postaci liczby całkowitej.

Uwaga: zapisz ścieżkę TLV taką jak używany w zarządzaniu danymi. W szczególności na początku powinno znajdować się oznaczenie profilu, które pozwala na interpretację kolejnych elementów ścieżki. Ta wersja metody przyjmuje identyfikator instancji profilu w postaci liczby całkowitej.

Ta metoda wstawia identyfikator instancji przy użyciu ContextTag(kTag_WDMPathProfileInstance), czyli najnowszej wersji kodowania ścieżki.

Szczegóły
Parametry
[in] aWriter
Odwołanie do zapisującego TLV użytego do zapisania ścieżki.
[in] aTag
Odniesienie do pełnego tagu TLV, który ma zastosowanie do tej ścieżki.
[in] aProfileId
Identyfikator profilu, w którym mają być interpretowane elementy ścieżki.
[in] aInstanceId
Odwołanie do opcjonalnego identyfikatora instancji profilu, który ma być używany. Jeśli nie chcesz używać żadnego identyfikatora instancji, ten parametr powinien mieć wartość kInstanceIdNotSpecified.
[in] aPathLen
Długość listy elementów ścieżki (czasami 0) poza początkowym specyfikatorem profilu.
[in] ...
Opcjonalna lista zmiennych długości dodatkowych tagów ścieżki.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR wskazujący na brak możliwości sformatowania danej ścieżki.

EncodePath

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

Zakoduj ścieżkę WDM, używając identyfikatora instancji tablicy bajtów.

Uwaga: zapisz ścieżkę TLV taką jak używany w zarządzaniu danymi. W szczególności na początku powinno znajdować się oznaczenie profilu, które pozwala na interpretację kolejnych elementów ścieżki. Ta wersja metody wymaga identyfikatora instancji profilu tablicy bajtów i długości.

Ta metoda wstawia identyfikator instancji przy użyciu ContextTag(kTag_WDMPathProfileInstance), czyli najnowszej wersji kodowania ścieżki.

Szczegóły
Parametry
[in] aWriter
Odwołanie do zapisującego TLV użytego do zapisania ścieżki.
[in] aTag
Odniesienie do pełnego tagu TLV, który ma zastosowanie do tej ścieżki.
[in] aProfileId
Identyfikator profilu, w którym mają być interpretowane elementy ścieżki.
[in] aInstanceIdLen
Długość tablicy bajtów, która tworzy identyfikator instancji. Jeśli nie ma identyfikatora, parametr powinien mieć wartość 0.
[in] aInstanceId
Opcjonalna tablica bajtów używana jako identyfikator instancji profilu. Ten argument może mieć wartość NULL, jeśli nie podano identyfikatora instancji.
[in] aPathLen
Długość listy elementów ścieżki (czasami 0) poza początkowym specyfikatorem profilu.
[in] ...
Opcjonalna lista tagów o zmiennej długości i dodatkowych tagów ścieżki.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR wskazujący na brak możliwości sformatowania danej ścieżki.

EncodePath

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

Zakoduj ścieżkę WDM, używając identyfikatora instancji ciągu znaków.

Uwaga: zapisz ścieżkę TLV taką jak używany w zarządzaniu danymi. W szczególności na początku powinno znajdować się oznaczenie profilu, które pozwala na interpretację kolejnych elementów ścieżki. Ta wersja metody przyjmuje identyfikator instancji profilu w postaci ciągu znaków.

Ta metoda wstawia identyfikator instancji przy użyciu ContextTag(kTag_WDMPathProfileInstance), czyli najnowszej wersji kodowania ścieżki.

Szczegóły
Parametry
[in] aWriter
Odwołanie do zapisującego TLV użytego do zapisania ścieżki.
[in] aTag
Odniesienie do pełnego tagu TLV, który ma zastosowanie do tej ścieżki.
[in] aProfileId
Identyfikator profilu, w którym mają być interpretowane elementy ścieżki.
[in] aInstanceId
Opcjonalny ciąg znaków używany jako identyfikator instancji profilu. Jeśli nie podano identyfikatora instancji, ten argument może mieć wartość NULL.
[in] aPathLen
Długość listy elementów ścieżki (czasami 0) poza początkowym specyfikatorem profilu.
[in] ...
Opcjonalna lista tagów o zmiennej długości i dodatkowych tagów ścieżki.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR wskazujący na brak możliwości sformatowania danej ścieżki.

EndDataListElement

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

Zakończ zapisywanie elementu listy danych.

Wpisz TLV na końcu elementu listy danych WDM. Należy pamiętać, że to rozwiązanie jest automatycznie przekazywane jako typ kTLVType_Array do wywołania EndContainer() przy założeniu, że zawsze zamykamy element listy.

Szczegóły
Parametry
[in] aWriter
Odwołanie do zapisującego TLV, przy którym należy wpisać koniec elementu.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR wskazujący na brak możliwości zamknięcia kontenera.

EndEncodePath

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

EndList

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

Zakończ zapisywanie listy ścieżek lub listy danych.

Wpisz TLV na końcu ścieżki WDM lub listy danych. Na koniec określ też scenarzystę.

Szczegóły
Parametry
[in,out] aWriter
Odwołanie do zapisującego w formacie TLV, dla którego należy wpisać koniec listy.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR wskazujący na brak możliwości zamknięcia kontenera.

EndList

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

Zakończ zapisywanie listy ścieżek lub listy danych.

Wpisz TLV na końcu ścieżki WDM lub listy danych. Na koniec określ też scenarzystę. W tym przypadku obiekt ReferencedTLVData, w którym zapisywany jest obiekt TLV, jest przekazywany i modyfikowany tak, aby odzwierciedlał ilość zapisanych danych.

Szczegóły
Parametry
[in,out] aList
Odwołanie do obiektu ReferenceTLVData, w którym zapisano listę.
[in] aWriter
Odwołanie do zapisującego w formacie TLV, dla którego należy wpisać koniec listy.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR wskazujący na brak możliwości zamknięcia kontenera.

IsPublisherSpecific

bool IsPublisherSpecific(
  const TopicIdentifier & aTopicId
)

Sprawdź, czy identyfikator tematu jest przypisany do wydawcy.

Szczegóły
Parametry
[in] aTopicId
identyfikator tematu do sprawdzenia
Zwroty
true (prawda), jeśli identyfikator tematu jest powiązany z wydawcą. W przeciwnym razie ma wartość false (fałsz).

OpenDataList

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

Zacznij odczytywać listę danych.

Mając na uwadze świeżego czytelnika i listę danych, zacznij czytać listę i sprawdź tagi i typy napotkane początkowo w ramach procesu. Jeśli wszystko pójdzie dobrze, czytelnik zatrzyma się po otwarciu kontenera listy.

Szczegóły
Parametry
[in] aDataList
Lista danych przekazywana jako odwołanie do obiektu ReferencedTLVData. Typowym przypadkiem użycia jest sytuacja, w której lista pozostaje w buforze po odebraniu.
[out] aReader
Odwołanie do czytnika TLV używanego do odczytu listy danych. Czytnik będzie w lewym miejscu na liście tuż przed pierwszą pozycją na liście.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR wskazujący na błąd otwarcia listy danych i sprawdzenie odpowiednich tagów i typów.

OpenDataListElement

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

Zacznij odczytywać element listy danych.

Mając na uwadze, że czytelnik znajduje się w elemencie listy danych, zacznij odczytywać ten element i sprawdzać tagi oraz typy napotkanych w procesie tagów i typów. Jeśli wszystko pójdzie dobrze, czytelnik zostanie umieszczony w danych elementów danych, a czytnik ścieżki wejścia/wyjścia jest umieszczony na odpowiedniej ścieżce.

Szczegóły
Parametry
[in] aReader
Odwołanie do czytnika TLV umieszczonego w elemencie listy danych.
[out] aPathReader
Odwołanie do czytnika TLV wskazującego komponent ścieżki elementu listy danych.
[out] aVersion
Odwołanie do 64-bitowej liczby całkowitej ustawianej na wersję elementu listy danych (jeśli występuje) lub na wartość kVersionNotOkreślified.
Zwroty
WEAVE_NO_ERROR w przypadku powodzenia lub WEAVE_ERROR powiązanego z otwarciem i odczytem elementu listy danych.

OpenPathList

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

Zacznij odczytywać listę ścieżek.

Mając na uwadze aktualne dane czytelników i listę ścieżek, zacznij czytać listę i sprawdź tagi i typy napotkane początkowo w procesie. Jeśli wszystko pójdzie dobrze, czytelnik zatrzyma się po otwarciu kontenera listy.

Szczegóły
Parametry
[in] aPathList
Lista ścieżek przekazywana jako odwołanie do obiektu ReferencedTLVData. Typowym przypadkiem użycia jest sytuacja, w której lista pozostaje w buforze po odebraniu.
[out] aReader
Odwołanie do czytnika TLV używanego do odczytu listy ścieżek. Czytnik zostanie umieszczony w lewo i tuż przed pierwszą ścieżką na liście.
Zwroty
WEAVE_NO_ERROR po powodzeniu. w przeciwnym razie WEAVE_ERROR wskazuje na niepowodzenie otwarcia listy ścieżek oraz sprawdzenie poprawności odpowiednich tagów i typów.

PublisherSpecificTopicId

TopicIdentifier PublisherSpecificTopicId(
  void
)

Wygeneruj od zera identyfikator tematu specyficzny dla wydawcy.

Szczegóły
Zwroty
nowego identyfikatora tematu.

SendStatusReport

WEAVE_ERROR SendStatusReport(
  ExchangeContext *aExchangeCtx,
  StatusReport & aStatus
)

StartDataList

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

Zacznij tworzyć listę danych.

Zapisz TLV na początku listy danych WDM, np. jako podstawowy argument w funkcji UpdateRequest().

Szczegóły
Parametry
[in] aWriter
Odwołanie do autora TLV, od którego można zacząć pisać.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR, który wskazuje, że nie można uruchomić kontenera.

StartDataList

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

Zacznij zapisywać listę danych do danego obiektu ReferencedTLVData.

Zapisz TLV na początku listy danych WDM. W tym przypadku zakładamy, że zapisujemy listę danych we wskazanej strukturze danych TLV. Zakładamy, że zapisujący nie zainicjował, a w każdym przypadku zostanie zainicjowany tak, aby wskazywał dany obiekt.

Szczegóły
Parametry
[out] aDataList
Odwołanie do obiektu ReferencedTLVData, który ma być celem zapisującego i ostatecznie zawierać interesujące Cię dane.
[in] aWriter
Odwołanie do autora TLV, od którego można zacząć pisać.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR, który wskazuje, że nie można uruchomić kontenera.

StartDataListElement

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

Zacznij zapisywać element listy danych.

Zapisz TLV na początku elementu listy danych WDM.

Szczegóły
Parametry
[in] aWriter
Odwołanie do autora TLV, od którego można zacząć pisać.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR, który wskazuje, że nie można uruchomić kontenera.

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
)

Zacznij tworzyć listę ścieżek.

Wpisz TLV na początku listy ścieżek WDM, np. jako podstawowy argument w funkcji ViewRequest().

Szczegóły
Parametry
[in] aWriter
Odwołanie do autora TLV, od którego można zacząć pisać.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie zwraca błąd WEAVE_ERROR, który wskazuje, że nie można uruchomić kontenera.

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
)

Sprawdź, czy odczytywany element TLV ma oczekiwany typ TLV.

Sprawdź podany typ TLV z typem elementu w nagłówku czytnika TLV i w razie braku dopasowania zwracaj błąd.

Szczegóły
Parametry
[in] aType
Wartość TLVType, która ma zostać sprawdzona pod kątem określonego elementu.
[in] aReader
Odwołanie do czytnika TLV umieszczonego w elemencie do zweryfikowania.
Zwroty
WEAVE_NO_ERROR, jeśli występuje dopasowanie, lub WEAVE_ERROR_WRONG_TLV_TYPE, jeśli nie.
Zobacz też:
WeaveTLVTypes.h

ValidateWDMTag

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

Sprawdź, czy odczytywany element TLV ma oczekiwany tag WDM.

Szczegóły
Parametry
[in] aTagNum
32-bitowy numer oczekiwanego tagu WDM.
[in] aReader
Czytnik TLV umieszczony w elemencie do zweryfikowania.
Zwroty
WEAVE_NO_ERROR Po powodzeniu. W przeciwnym razie WEAVE_ERROR_INVALID_TLV_TAG, jeśli podczas interpretacji jako tag WDM nie pasuje do podanego numeru tagu.