nl::Wea::Profile::DataManagement_Current

Ta przestrzeń nazw obejmuje wszystkie interfejsy profilu Weave do zarządzania danymi Weave, które są obecnie obsługiwane w środowisku produkcyjnym.

Podsumowanie

Wyliczenia

@100{
  kTag_Region = 1,
  kTag_Message = 2
}
enum | typ wyliczeniowy
Tagi dla zdarzenia kNestDebug_StringLogEntryEvent.
@101{
  kTag_Token = 1,
  kTag_Args = 2
}
enum | typ wyliczeniowy
Tagi dla kNestDebug_TokenizedLogEntryEvent.
@102 enum | typ wyliczeniowy
Tagi trwałych zdarzeń.
@104 enum | typ wyliczeniowy
Typy komunikatów w profilu WDM.
@105 enum | typ wyliczeniowy
Kody stanu WDM.
@147 enum | typ wyliczeniowy
@95{
  kTag_CurrentImportance = 1,
  kTag_ImportanceExpiration,
  kTag_MinimumLogUploadInterval,
  kTag_MaximumLogUploadInterval,
  kTag_LoggingDestination,
  kTag_TraitLoggingImportance
}
enum | typ wyliczeniowy
Tagi ustawień logowania.
@96{
  kTag_SupportedLogTransports = 1,
  kTag_SupportsStreaming = 2,
  kTag_SupportsNonVolatileStorage = 3,
  kTag_SupportsPerTraitVerbosity = 4,
  kTag_LoggingVolume = 5,
  kTag_LogBufferingCapacity = 6
}
enum | typ wyliczeniowy
Tagi umożliwiające funkcje logowania.
@97{
  kTag_EventSource = 1,
  kTag_EventImportance = 2,
  kTag_EventID = 3,
  kTag_RelatedEventImportance = 10,
  kTag_RelatedEventID = 11,
  kTag_EventUTCTimestamp = 12,
  kTag_EventSystemTimestamp = 13,
  kTag_EventResourceID = 14,
  kTag_EventTraitProfileID = 15,
  kTag_EventTraitInstanceID = 16,
  kTag_EventType = 17,
  kTag_EventDeltaUTCTime = 30,
  kTag_EventDeltaSystemTime = 31,
  kTag_EventData = 50,
  kTag_ExternalEventStructure = 99
}
enum | typ wyliczeniowy
Tagi metadanych zdarzeń.
@98 enum | typ wyliczeniowy
Definicje profili.
@99{
  kNestDebug_StringLogEntryEvent = 1,
  kNestDebug_TokenizedLogEntryEvent = 2,
  kNestDebug_TokenizedHeaderEntryEvent = 3
}
enum | typ wyliczeniowy
Typy zdarzeń w przypadku cechy Nest Debug.
CommandFlags{
  kCommandFlag_MustBeVersionValid = 0x0001,
  kCommandFlag_InitiationTimeValid = 0x0002,
  kCommandFlag_ActionTimeValid = 0x0004,
  kCommandFlag_ExpiryTimeValid = 0x0008,
  kCommandFlag_IsOneWay = 0x0010
}
enum | typ wyliczeniowy
ImportanceType{
  ProductionCritical = 1,
  Production,
  Info,
  Debug
}
enum | typ wyliczeniowy
Znaczenie wpisu w dzienniku.
LoggingManagementStates{
  kLoggingManagementState_Idle = 1,
  kLoggingManagementState_InProgress = 2,
  kLoggingManagementState_Holdoff = 3,
  kLoggingManagementState_Shutdown = 4
}
enum | typ wyliczeniowy
TimestampType enum | typ wyliczeniowy
Prawidłowość i typ sygnatury czasowej zawartej w polu EventOptions.

Typy

CommandFlags typedef,
DataVersion typedef,
uint64_t
EventProcessor typedef,
void *
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData) typedef,
Funkcja, która dostarcza element eventData do podsystemu logowania zdarzeń.
FetchExternalEventsFunct)(EventLoadOutContext *aContext) typedef,
Prototyp funkcji do obsługi wywołań zwrotnych platformy.
GenericTraitSinkCatalog typedef,
GenericTraitSourceCatalog typedef,
ImportanceType typedef,
Znaczenie wpisu w dzienniku.
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext) typedef,
void(*
Iteracyjne elementy pomocnicze.
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer) typedef,
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID) typedef,
void(*
Prototyp funkcji wywołania zwrotnego wywoływanego podczas przekazywania zdarzeń zewnętrznych do subskrybenta zdalnego.
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv) typedef,
void(*
Prototyp funkcji wywołań zwrotnych wywoływanych po usunięciu zdarzeń z bufora.
PropertyDictionaryKey typedef,
uint16_t
PropertyPathHandle typedef,
uint32_t
Element PropertyPathHandle to unikalny 32-bitowy numer liczbowy ścieżki WDM w odniesieniu do katalogu głównego instancji funkcji.
PropertySchemaHandle typedef,
uint16_t
SchemaVersion typedef,
uint16_t
SingleResourceSinkTraitCatalog typedef,
SingleResourceSourceTraitCatalog typedef,
TimestampType typedef,
Prawidłowość i typ sygnatury czasowej zawartej w polu EventOptions.
TraitDataHandle typedef,
uint16_t
duration_t nl::Weave::Profiles::DataManagement_Current::duration_t
uint32_t
Typ określa czas trwania w milisekundach.
event_id_t nl::Weave::Profiles::DataManagement_Current::event_id_t
uint32_t
Typ identyfikatora zdarzenia.
timestamp_t nl::Weave::Profiles::DataManagement_Current::timestamp_t
uint32_t
Typ używany do opisu sygnatury czasowej w milisekundach.
utc_timestamp_t nl::Weave::Profiles::DataManagement_Current::utc_timestamp_t
uint64_t
Typ używany do opisywania sygnatury czasowej UTC w milisekundach.

Zmienne

sInstance
sLogFileName = "topazlog"[]
char

Funkcje

BdxErrorHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, WEAVE_ERROR aErrorCode)
void
BdxGetBlockHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aIsLastBlock)
void
BdxRejectHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aReport)
void
BdxSendAcceptHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::BulkDataTransfer::SendAccept *aSendAcceptMsg)
BdxXferDoneHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer)
void
BdxXferErrorHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aXferError)
void
CreatePropertyPathHandle(PropertySchemaHandle aPropertyPathSchemaId, PropertyDictionaryKey aPropertyPathDictionaryKey)
EventWriterTLVCopy(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
Funkcja pomocnicza, która tłumaczy już zserializowany element danych zdarzenia na bufor zdarzenia.
GetPropertyDictionaryKey(PropertyPathHandle aHandle)
PropertyDictionaryKey
GetPropertySchemaHandle(PropertyPathHandle aHandle)
PropertySchemaHandle
IsNullPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsRootPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsVersionNewer(const DataVersion & aVersion, const DataVersion & aReference)
bool
Jest to zoptymalizowana implementacja algorytmu, która umożliwia porównywanie wersji.
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
bool
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
Funkcja służąca do znajdowania TraitUpdatableDataSink w katalogu TraitDataSink.
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData)
Rejestrowanie zdarzenia ze wstępnie zserializowanego formularza.
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions)
Rejestruj zdarzenie ze wstępnie zserializowanego formularza z dodatkowymi opcjami.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData)
Rejestrowanie zdarzenia przez wywołanie zwrotne.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
Rejestrowanie zdarzenia przez wywołanie zwrotne z opcjami.
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
LogFreeform emituje dowolny ciąg znaków do domyślnego strumienia zdarzeń.
LookForElementWithTag(const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader)
PlainTextWriter(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
Funkcja pomocnicza do wyświetlania dowolnego tekstu jako zdarzenia debugowania.
PlainTextWriter(::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
Funkcja pomocnicza do wyświetlania dowolnego tekstu jako zdarzenia debugowania.
operator!=(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool
operator==(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool

Zajęcia

nl::Weave::Profile::DataManagement_Current::AlwaysAcceptDataElementAccessControlDelegate
nl::Weave::Profile::DataManagement_Current::BuilderBase

Klasa podstawowa dla koderów wiadomości WDM.

nl::Weave::Profiles::DataManagement_Current::Okrągły czytnik

TLVReader obsługiwany przez CircularEventBuffer.

nl::Wea::Profile::DataManagement_Current::Polecenie
nl::Weave::Profiles::DataManagement_Current::CommandSender
nl::Weave::Profile::DataManagement_Current::GenericTraitCatalogImpl

Weave udostępniło interfejs TraitCatalogBase do gromadzenia instancji danych o cechach, które odnoszą się do tego samego zasobu.

nl::Weave::Profile::DataManagement_Current::IDataElementAccessControlDelegate

Interfejs, który zostanie zaimplementowany przez podmiot przetwarzający elementy danych w żądaniu NotifyRequest.

nl::Weave::Profile::DataManagement_Current::IDirtyPathCut
nl::Weave::Profile::DataManagement_Current::IPathFilter
nl::Weave::Profile::DataManagement_Current::IWeavePublisherLock

Interfejs, który zostanie wdrożony przez aplikację, aby serializować dostęp do kluczowych struktur danych WDM.

nl::Weave::Profile::DataManagement_Current::IWeaveWDMWyciszx

Interfejs obiektu mutex.

nl::Weave::Profile::DataManagement_Current::ListBuilderBase

Klasa podstawowa dla koderów wiadomości WDM, specjalizująca się w elementach tablicy TLV, takich jak listy danych i listy wersji.

nl::Weave::Profile::DataManagement_Current::ListParserBase

Klasa podstawowa dla parsera wiadomości WDM specjalizująca się w elementach tablicy TLV, takich jak listy danych i listy wersji.

nl::Weave::Profile::DataManagement_Current::LogBDXUpload
nl::Weave::Profile::DataManagement_Current::LoggingConfiguration

LoggingConfiguration stanowi konfigurowalny komponent podrzędnego zdarzenia LogaWeave.

nl::Weave::Profile::DataManagement_Current::LoggingManagement

Klasa do zarządzania logami zdarzeń w pamięci.

nl::Weave::Profile::DataManagement_Current::NotificationEngine
nl::Weave::Profile::DataManagement_Current::ParserBase

Klasa podstawowa dla parserów wiadomości WDM.

nl::Weave::Profiles::DataManagement_Current::ResourceIdentifier

Struktura zawierająca identyfikator zasobu.

nl::Weave::Profile::DataManagement_Current:: SingleResourceTraitCatalog
nl::Weave::Profiles::DataManagement_Current::SubskrypcjaClient
nl::Weave::Profile::DataManagement_Current::SubscriptionEngine

Jest to miejsce, w którym są dostępne wszystkie subskrypcje WDM Next, zarówno po stronie klienta, jak i wydawcy.

nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler
nl::Weave::Profile::DataManagement_Current::TraitCatalogBase
nl::Weave::Profile::DataManagement_Current::TraitDataSink
nl::Weave::Profile::DataManagement_Current::TraitDataSource
nl::Weave::Profiles::DataManagement_Current::TraitSchemaEngine

Mechanizm schematów zbiera informacje o schemacie powiązane z konkretną cechą i udostępnia obiekty, które mogą przeanalizować i przekształcić je w formularz, którego mogą używać maszyny WDM.

nl::Weave::Profile::DataManagement_Current::TraitUpdatableDataSink
nl::Weave::Profile::DataManagement_Current::UpdateClient
nl::Weave::Profile::DataManagement_Current::UpdateDictionaryDirtyPathCut

Klasa narzędzia umożliwiająca przywrócenie słownika do kolejki oczekujących podczas przetwarzania ścieżki właściwości zawierającej element podrzędny.

nl::Weave::Profile::DataManagement_Current::UpdateDirtyPathFilter

Klasa narzędzia do filtrowania ścieżki podczas obsługi powiadomień.

nl::Weave::Profile::DataManagement_Current::UpdateEncoder

Ten obiekt koduje ładunki WDM UpdateRequest i PartialUpdateRequest.

nl::Weave::Profile::DataManagement_Current::ViewClient

Dane strukturalne

nl::Wea::Profile::DataManagement_Current::CercularEventBuffer

Wewnętrzny bufor zdarzenia, utworzony w miejscu nl::Weave::TLV::WeaveCircularTLVBuffer.

nl::Weave::Profile::DataManagement_Current::ConstSchemaVersionRange
nl::Wea::Profile::DataManagement_Current::CopyAndAdjustDeltaTimeContext

Struktura własna do omijania listy zdarzeń.

nl::Weave::Profiles:DataManagement_Current::DebugLogContext
nl::Weave::Profile::DataManagement_Current::DetailsRootSection

Struktura zapewniająca pełną rozdzielczość instancji trait.

nl::Weave::Profile::DataManagement_Current::EventEnvelopeContext

Struktura wewnętrzna dla omijania zdarzeń.

nl::Weave::Profile::DataManagement_Current::EventLoadOutContext

Struktura kopiowania list zdarzeń.

nl::Weave::Profile::DataManagement_Current::EventOptions

Struktura, która udostępnia opcje różnych pól zdarzenia.

nl::Weave::Profiles::DataManagement_Current::EventSchema

Struktura definiująca schemat metadanych zdarzeń.

nl::Wea::Profile::DataManagement_Current::ZewnętrzneWydarzenia

Struktura umożliwiająca śledzenie zdarzeń przechowywanych na platformie

nl::Weave::Profile::DataManagement_Current::LogStorageResources

Klasa pomocnicza używana do inicjowania zarządzania logiem.

nl::Weave::Profile::DataManagement_Current::ReclaimEventCtx
nl::Weave::Profile::DataManagement_Current::SchemaVersionRange
nl::Weave::Profile::DataManagement_Current::TraitPath
nl::Weave::Profile::DataManagement_Current::TraitPathStore
nl::Weave::Profile::DataManagement_Current::VersionedTraitPath

Związki

nl::Wea::Profile::DataManagement_Current::Sygnatura czasowa

Związek zapewniający system zestawu aplikacji lub sygnaturę czasową UTC.

Przestrzenie nazw

nl::Weave::Profile::DataManagement_Current::BaseMessageWithSubskrybujId
nl::Wea::Profile::DataManagement_Current::CustomCommand

Definicja niestandardowego polecenia WDM.

nl::Wea::Profile::DataManagement_Current::CustomCommandResponse

Niestandardowa definicja polecenia WDM.

nl::Weave::Profiles::DataManagement_Current::DataElement

Definicja elementu danych WDM.

nl::Weave::Profile::DataManagement_Current::DataList
nl::Wea::Profile::DataManagement_Current::Wydarzenie
nl::Weave::Profile::DataManagement_Current::EventList
nl::Weave::Profile::DataManagement_Current::NotificationRequest
nl::Weave::Profile::DataManagement_Current::Ścieżka

Definicja ścieżki WDM.

nl::Weave::Profile::DataManagement_Current::Lista ścieżek

Definicja listy Ścieżka WDM.

nl::Weave::Profile::DataManagement_Current::Platforma
nl::Weave::Profile::DataManagement_Current::Odrzucenie rekordu
nl::Weave::Profiles::DataManagement_Current::OdrzućoListList
nl::Weave::Profiles::DataManagement_Current::StatusElement

Definicja elementu WDM.

nl::Weave::Profile::DataManagement_Current::StatusList
nl::Wea::Profile::DataManagement_Current::SubskrybujSubskrybuj
nl::Weave::Profile::DataManagement_Current::SubskrybujPotwierdzenie
nl::Weave::Profiles::DataManagement_Current::Subskrybuj wniosek
nl::Weave::Profile::DataManagement_Current::Subskrybujesz
nl::Weave::Profile::DataManagement_Current::UpdateRequest

Definicja żądania aktualizacji WDM.

nl::Weave::Profile::DataManagement_Current::UpdateResponse
nl::Weave::Profile::DataManagement_Current::WersjaList
nl::Wea::Profile::DataManagement_Current::ViewRequest
nl::Wea::Profile::DataManagement_Current::ViewResponse

Wyliczenia

@100

 @100

Tagi dla zdarzenia kNestDebug_StringLogEntryEvent.

Właściwości
kTag_Message

Ciąg tekstowy zawierający rzeczywisty komunikat debugowania.

kTag_Region

32-bitowy bez podpisu, wskazujący region dziennika, czyli moduł, którego dotyczy komunikat dziennika.

@101

 @101

Tagi dla kNestDebug_TokenizedLogEntryEvent.

Właściwości
kTag_Args

Tablica argumentów do wysłania wraz z wiadomością o tokenie.

kTag_Token

32-bitowa niepodpisana wartość odpowiadająca tokenowi.

@102

 @102

Tagi trwałych zdarzeń.

@104

 @104

Typy komunikatów w profilu WDM.

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

@105

 @105

Kody stanu WDM.

@147

 @147

@95

 @95

Tagi ustawień logowania.

Właściwości
kTag_CurrentImportance

Bieżące znaczenie logowania – wartość jest typu ImportanceType.

kTag_ImportanceExpiration

Czas w UTC (w sekundach), gdy obecne ustawienia rejestrowania z podwyższonym poziomem dostępu zostaną przywrócone do wartości domyślnych.

kTag_LoggingDestination

URL wskazujący miejsce docelowe przesłania dziennika.

kTag_MaximumLogUploadInterval

Maksymalny czas trwania (w sekundach) między automatycznymi próbami przesłania dziennika.

kTag_MinimumLogUploadInterval

Minimalny czas (w sekundach) między automatycznymi próbami przesłania dziennika.

kTag_TraitLoggingImportance

Opcjonalna tablica wybiórczo mapuje wybrane profile na wyższe poziomy logowania.

Każdy element w tablicy ma formę (profil,ścieżka,import dzienników) i umożliwia wybiórcze poszerzenie rejestrowania z podzbioru systemu. Priorytet rejestrowania profilu o podwyższonym standardzie jest istotny tylko wtedy, gdy priorytet jest wyższy od bieżącego atrybutu i znajduje się w nim ten sam czas do wygaśnięcia.

@96

 @96

Tagi umożliwiające funkcje logowania.

Właściwości
kTag_LogBufferingCapacity

32-bitowa liczba całkowita bez znaku, opisująca rozmiar buforowania logu w kB.

kTag_LoggingVolume

32-bitowa liczba całkowita bez znaku, która opisuje oczekiwaną ilość logów w kB/dzień.

kTag_SupportedLogTransports

Tablica obsługiwanych mechanizmów transportu logów.

kTag_SupportsNonVolatileStorage

Wartość logiczna wskazująca, czy urządzenie obsługuje pamięć ulotną.

kTag_SupportsPerTraitVerbosity

Wartość logiczna wskazująca, czy urządzenie obsługuje ustawienia szczegółowości według wskaźnika.

kTag_SupportsStreaming

Wartość logiczna wskazująca, czy urządzenie obsługuje strumieniowanie danych.

@97

 @97

Tagi metadanych zdarzeń.

Pełną semantykę wartości tagów znajdziesz w specyfikacji Projektowania zdarzeń.

Właściwości
kTag_EventData

Opcjonalne. Dane zdarzenia. Jeśli jest pusta, przyjmuje domyślnie pustą strukturę.

kTag_EventDeltaSystemTime

Tag wewnętrzny WDM, różnica w czasie między poprzednim zdarzeniem a kodowaniem.

kTag_EventDeltaUTCTime

Tag wewnętrzny WDM, różnica w czasie między poprzednim zdarzeniem a kodowaniem.

kTag_EventID

Numer sekwencji zdarzenia wyrażony w 64-bitowej niepodpisanej liczbie.

Musi być sekwencyjna, skoki w sekwencji wskazują luki w zdarzeniach.

kTag_EventImportance

Znaczenie wydarzenia.

kTag_EventResourceID

Opcjonalne.

Wartość to identyfikator zasobu, którego dotyczy zdarzenie. Jeśli zostanie pominięty, wartość będzie taka sama jak wartość kTag_EventSource.

kTag_EventSource

Identyfikator węzła urządzenia, które wygenerowało zdarzenie.

kTag_EventSystemTimestamp

Opcjonalne. Sygnatura czasowa zdarzenia w milisekundach.

kTag_EventTraitInstanceID

Opcjonalne: wystąpienie cechy, która wygenerowała zdarzenie.

kTag_EventTraitProfileID

Obowiązkowe. 32-bitowa liczba całkowita bez znaku, która jest równa identyfikatorowi profilu w atrybucie.

kTag_EventType

Obowiązkowe. 16-bitowa liczba całkowita bez znaku, która jest równa wartości wdl.event.id dla tego typu zdarzenia.

kTag_EventUTCTimestamp

Opcjonalne. Sygnatura czasowa UTC zdarzenia w milisekundach.

kTag_ExternalEventStructure

Tag wewnętrzny dla zdarzeń zewnętrznych. Nigdy nie należy przesyłać ich przewodowo – nie należy go używać poza biblioteką Weave.

kTag_RelatedEventID

Opcjonalne.

Identyfikator zdarzenia, z którym jest powiązane to zdarzenie. Jeśli zostanie pominięta, wartość będzie równa wartości kTag_EventID.

kTag_RelatedEventImportance

Opcjonalne.

Znaczenie powiązanego zdarzenia. Jeśli zostanie pominięta, wartość będzie równa wartości kTag_EventImportance.

@98

 @98

Definicje profili.

@99

 @99

Typy zdarzeń w przypadku cechy Nest Debug.

Właściwości
kNestDebug_StringLogEntryEvent

Zdarzenie dotyczące komunikatu debugowania o ciągu znaków.

kNestDebug_TokenizedHeaderEntryEvent

Zdarzenie do przekazywania informacji o tokenizowanym nagłówku.

kNestDebug_TokenizedLogEntryEvent

Zdarzenie dotyczące wiadomości debugowanej w formie tokenizacji.

Flagi poleceń

 CommandFlags
Właściwości
kCommandFlag_ActionTimeValid

Określ, kiedy czas działania jest prawidłowy.

kCommandFlag_ExpiryTimeValid

Ustaw, kiedy czas ważności jest prawidłowy.

kCommandFlag_InitiationTimeValid

Ustaw, kiedy czas inicjowania jest prawidłowy.

kCommandFlag_IsOneWay

Ustaw, gdy polecenie jest jednokierunkowe.

kCommandFlag_MustBeVersionValid

Ustaw, kiedy pole wersji jest prawidłowe.

Typ ważności

 ImportanceType

Znaczenie wpisu w dzienniku.

Znaczenie jest używane do filtrowania zdarzeń, zanim zostaną one uruchomione w dzienniku. Po wystąpieniu zdarzenia nie będziemy już usuwać żadnych wpisów z dziennika. Poziom ważności odpowiada priorytetowi przechowywania zdarzeń. Jeśli do pełnego bufora zostanie dodane zdarzenie o dużym znaczeniu, wydarzenia będą pomijane według ich znaczenia (i wieku). Z tego względu poziomy ważności mają tylko wartość względną. Jeśli system korzysta tylko z jednego poziomu ważności, zdarzenia są pomijane tylko według daty urodzenia, np. bufor pierścieniowy.

Właściwości
Debug

Znaczenie debugowania wskazuje wpisy w dzienniku, które są istotne dla deweloperów systemu. Jest używane głównie na etapie programowania.

Logi istotności debugowania nie są uwzględniane w budżetach przepustowości ani energii zasilania ograniczonych urządzeń. Z tego powodu w systemach produkcyjnych muszą być używane tylko przez ograniczony czas.

Info

Znaczenie informacji wskazuje wpisy logu, które zapewniają dodatkowe statystyki i diagnostykę systemu operacyjnego.

Poziom logowania może być używany przez dłuższy czas w systemie produkcyjnym lub może być używany jako domyślny poziom rejestrowania podczas testowania funkcjonalnego. Na urządzeniach z ograniczeniami dostęp do wpisów rejestrowanych na poziomie Informacje musi być uwzględniony w budżecie przepustowości i pamięci, ale nie w budżecie energii.

Production

Znaczenie produkcji to wpisy logu, które są używane do ciągłego monitorowania i konserwacji ekosystemu Nest.

Na urządzeniach z ograniczonym dostępem uwzględniane są wpisy o znaczeniu produkcyjnym, które powinny być uwzględnione w budżecie zasilania i pamięci, ponieważ tego typu funkcje są zawsze rejestrowane i odciążane na urządzeniu.

ProductionCritical

Krytyczne znaczenie produkcji to zdarzenia, których straty mogłyby bezpośrednio wpłynąć na funkcje dostępne dla klientów.

W przypadku aplikacji może wystąpić utrata zdarzeń krytycznych o produkcji. Na urządzeniach z ograniczonym dostępem wpisy o znaczeniu krytycznym dla środowiska produkcyjnego muszą być uwzględnione w budżecie zasilania i pamięci, ponieważ należy zawsze rejestrować je i odrzucać z urządzenia.

Stany zarządzania

 LoggingManagementStates
Właściwości
kLoggingManagementState_Holdoff

Przeciążenie logów zostało zakończone. Ponowne uruchamianie rozpoczniemy dopiero po wygaśnięciu wstrzymania.

kLoggingManagementState_Idle

Nie trwa żadne przeciążenie logów. Można je rozpocząć bez ograniczeń.

kLoggingManagementState_InProgress

Trwa przeciążenie logu.

kLoggingManagementState_Shutdown

Nie może wykonywać żadnych operacji logowania.

Typ sygnatury czasowej

 TimestampType

Prawidłowość i typ sygnatury czasowej zawartej w polu EventOptions.

Typy

Flagi poleceń

enum nl::Weave::Profiles::DataManagement_Current::CommandFlags CommandFlags

Wersja danych

uint64_t DataVersion

Procesor zdarzeń

void * EventProcessor

Zapis zdarzeń

WEAVE_ERROR(* EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData)

Funkcja, która dostarcza element eventData do podsystemu logowania zdarzeń.

Funkcje tego typu powinny dostarczać element eventData do podsystemu logowania zdarzeń. Funkcje tego typu są wywoływane po wygenerowaniu wszystkich wymaganych metadanych zdarzeń przez podsystem zdarzeń. Funkcja ta jest wywoływana z obiektem nl::Weave::TLV::TLVWriter, do której wysyła pojedynczy element TLV otagowany wartością kTag_EventData. Wartość tego elementu MUSI być strukturą zawierającą dane zdarzenia. Dane zdarzeń muszą być uporządkowane za pomocą tagów kontekstowych.

Szczegóły
Parametry
[in,out] ioWriter
Odniesienie do obiektu nl::Weave::TLV::TLVWriter używane do serializacji danych zdarzeń.
[in] inDataTag
Opis kontekstowy dla TLV, który właśnie piszemy.
[in] appData
Wskaźnik do kontekstu aplikacji.
Wartości zwracane
WEAVE_NO_ERROR
Powodzenie.
other
Odpowiedni błąd wskazujący na to, że nie udało się ukończyć serializowania danych zdarzeń. Błędy z wywołań funkcji ioWriter powinny być rozpowszechniane bez mapowania. Jeśli funkcja zwróci błąd dowolnego typu, generowanie zdarzenia zostanie przerwane, a zdarzenie nie zostanie zapisane w dzienniku.
Zobacz też:
PlainTextWriter
EventWriterTLVCopy

OdzyskanieZdarzenia zewnętrznego

WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)

Prototyp funkcji do obsługi wywołań zwrotnych platformy.

Podobnie jak FetchEventsFrom ta funkcja pobierania zwraca wszystkie zdarzenia z EventLoadOutContext.mStartingEventID do ExternalEvents.mLastEventID.

Wskaźnik kontekstowy jest typu FetchExternalEventsContext. Obejmuje to element EventLoadOutContext oraz kilka zmiennych pomocniczych na potrzeby formatu TLV. Zawiera też wskaźnik do struktury ExternalEvents utworzonej podczas rejestracji wywołania zwrotnego. Określa zakres identyfikatorów zdarzeń wywołania zwrotnego.

W przypadku powrotu z funkcji funkcja EventLoadOutContext.mCurrentEventID powinna odzwierciedlać pierwszy identyfikator zdarzenia, który nie został zapisany w buforze TLV. Platforma musi zapisywać nagłówki i dane zdarzeń w zapisie w pliku TLV w prawidłowym formacie określonym przez protokół EventLogging. Platforma musi też zachowywać niepowtarzalność zdarzeń i sygnatur czasowych.

Wszystkie błędy TLV należy zgłaszać na wyższych poziomach. Na przykład brak miejsca w buforze spowoduje wysłanie wysłanej wiadomości, po której następuje kolejne wywołanie zwrotne z informacją o tym, jaki identyfikator pozostanie.

Szczegóły
Wartości zwracane
WEAVE_ERROR_NO_MEMORY
Jeśli nie ma miejsca na zapisanie zdarzeń.
WEAVE_ERROR_BUFFER_TOO_SMALL
Jeśli nie ma miejsca na zapisanie zdarzeń.
WEAVE_NO_ERROR
Powodzenie.
WEAVE_END_OF_TLV
Powodzenie.

KatalogTuszyI

GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog

Katalog_ogólny_TraitSource

GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog

Typ ważności

enum nl::Weave::Profiles::DataManagement_Current::ImportanceType ImportanceType

Znaczenie wpisu w dzienniku.

Znaczenie jest używane do filtrowania zdarzeń, zanim zostaną one uruchomione w dzienniku. Po wystąpieniu zdarzenia nie będziemy już usuwać żadnych wpisów z dziennika. Poziom ważności odpowiada priorytetowi przechowywania zdarzeń. Jeśli do pełnego bufora zostanie dodane zdarzenie o dużym znaczeniu, wydarzenia będą pomijane według ich znaczenia (i wieku). Z tego względu poziomy ważności mają tylko wartość względną. Jeśli system korzysta tylko z jednego poziomu ważności, zdarzenia są pomijane tylko według daty urodzenia, np. bufor pierścieniowy.

Wywołanie zwrotne iteratora

void(* IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)

Iteracyjne elementy pomocnicze.

Narzędzie do obsługi bufora logowania

WEAVE_ERROR(* LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)

NotifyExternalEventsDeliveredFunct,

void(* NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)

Prototyp funkcji wywołania zwrotnego wywoływanego podczas przekazywania zdarzeń zewnętrznych do subskrybenta zdalnego.

Gdy zdarzenia zewnętrzne są dostarczane do subskrybenta zdalnego, wyszukiwarka wysyła powiadomienie do tego dostawcy. Wywołanie zwrotne zawiera zdarzenie ostatniego dostarczonego identyfikatora oraz identyfikator subskrybenta, który otrzymał zdarzenie.

Szczegóły
Parametry
[in] inEv
Obiekt zdarzeń zewnętrznych odpowiadający dostarczonym zdarzeniom
[in] inLastDeliveredEventID
Identyfikator ostatniego zdarzenia dostarczonego subskrybentowi.
[in] inRecipientNodeID
Identyfikator węzła Weave odbiorcy

Powiadamianie o wydarzeniach zewnętrznych

void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)

Prototyp funkcji wywołań zwrotnych wywoływanych po usunięciu zdarzeń z bufora.

Jeśli obiekt zdarzeń zewnętrznych zostanie usunięty z bufora wiadomości wychodzących, wyszukiwarka wyśle powiadomienie do zewnętrznego dostawcy zdarzeń. Wywołanie zwrotne zawiera zdarzenie zewnętrzne, które ma zostać wykluczone.

Szczegóły
Parametry
[in] inEv
Zdarzenia zewnętrzne są wykluczane

Klucz słownika

uint16_t PropertyDictionaryKey

Uchwyt PathPath

uint32_t PropertyPathHandle

Element PropertyPathHandle to unikalny 32-bitowy numer liczbowy ścieżki WDM w odniesieniu do katalogu głównego instancji funkcji.

Składa się z dwóch części:

  • Dolna 16-bitowa liczba, która jest zmapowana na statyczną część schematu.
  • Jeśli dolne 16-bitowe fragmenty odnoszą się do ścieżki w elemencie słownika, górna 16-bitowa liczba odpowiada kluczowi słownikowemu powiązanemu z tym elementem. Jeśli dolne 16-bity odnoszą się do elementu spoza słownika, górne 16-bity powinno mieć wartość 0.

Niektóre cechy:

  • Każdy atrybut ma własną przestrzeń obsługi ścieżki właściwości.
  • Każda unikalna ścieżka podrzędna WDM będzie miała podobną niepowtarzalną właściwość PropertyPathHandles.
  • Metoda PropertyPathHandles jest generowana automatycznie (na razie wykonywana ręcznie) przez kompilator cech z IDL i reprezentowana jako lista numeryczna w odpowiednim pliku nagłówka i atrybutów.
  • Dzięki temu logika aplikacji nie musi bezpośrednio zajmować się ścieżkami WDM. Interakcje z WDM są wykonywane wyłącznie przez te uchwyty.
  • W przypadku uchwytów ścieżki istnieją zarezerwowane wartości o konkretnym znaczeniu:
    • 0 oznacza 'NULL' uchwyt
    • 1 oznacza uchwyt wskazujący rdzeń instancji trait.

Uchwyt schema.org

uint16_t PropertySchemaHandle

Wersja schematu

uint16_t SchemaVersion

KatalogPojedynczychZasobów

SingleResourceTraitCatalog< TraitDataSink > SingleResourceSinkTraitCatalog

KatalogPojedynczychZasobów

SingleResourceTraitCatalog< TraitDataSource > SingleResourceSourceTraitCatalog

Typ sygnatury czasowej

enum nl::Weave::Profiles::DataManagement_Current::TimestampType TimestampType

Prawidłowość i typ sygnatury czasowej zawartej w polu EventOptions.

Uchwyt danych danych TraitData

uint16_t TraitDataHandle

trwanie_t

uint32_t duration_t

Typ określa czas trwania w milisekundach.

event_id_t

uint32_t event_id_t

Typ identyfikatora zdarzenia.

sygnatura_czasowa

uint32_t timestamp_t

Typ używany do opisu sygnatury czasowej w milisekundach.

utc_timestamp_t,

uint64_t utc_timestamp_t

Typ używany do opisywania sygnatury czasowej UTC w milisekundach.

Zmienne

instancja

LoggingManagement sInstance

Nazwa pliku sLog

char sLogFileName[] = "topazlog"

Funkcje

Narzędzie do obsługi błędów xx

void BdxErrorHandler(
  nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer,
  WEAVE_ERROR aErrorCode
)

BdxGetBlockHandler

void BdxGetBlockHandler(
  nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer,
  uint64_t *aLength,
  uint8_t **aDataBlock,
  bool *aIsLastBlock
)

Odrzuć URL

void BdxRejectHandler(
  nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer,
  nl::Weave::Profiles::StatusReporting::StatusReport *aReport
)

BdxSendAcceptHandler

WEAVE_ERROR BdxSendAcceptHandler(
  nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer,
  nl::Weave::Profiles::BulkDataTransfer::SendAccept *aSendAcceptMsg
)

Narzędzie BdxXferDoneHandler

void BdxXferDoneHandler(
  nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer
)

Narzędzie do obsługi błędów XdxXfer

void BdxXferErrorHandler(
  nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer,
  nl::Weave::Profiles::StatusReporting::StatusReport *aXferError
)

Utworzenie elementu PathPath

PropertyPathHandle CreatePropertyPathHandle(
  PropertySchemaHandle aPropertyPathSchemaId,
  PropertyDictionaryKey aPropertyPathDictionaryKey
)

EventWriterTLVCopy

WEAVE_ERROR EventWriterTLVCopy(
  TLVWriter & ioWriter,
  uint8_t inDataTag,
  void *appData
)

Funkcja pomocnicza, która tłumaczy już zserializowany element danych zdarzenia na bufor zdarzenia.

Szczegóły
Parametry
[in,out] ioWriter
Pisarz, który napisze wydarzenie
[in] inDataTag
Tag kontekstowy TLV, który kopiujemy. Nieużywane, ale wymagane przez typedef for EventWriterFunct.
[in] appData
Wskaźnik do TLVReadera, który przechowuje zserializowane dane zdarzenia.
Wartości zwracane
WEAVE_NO_ERROR
Powodzenie.
other
Inne błędy, które zwracają wartość ioWriter.

Klucz obiektu właściwości

PropertyDictionaryKey GetPropertyDictionaryKey(
  PropertyPathHandle aHandle
)

GetPropertySchemaHandle

PropertySchemaHandle GetPropertySchemaHandle(
  PropertyPathHandle aHandle
)

IsNullPropertiesPathHandle

bool IsNullPropertyPathHandle(
  PropertyPathHandle aHandle
)

Element IsRootPropertyPath

bool IsRootPropertyPathHandle(
  PropertyPathHandle aHandle
)

JestWersja nowsza

bool IsVersionNewer(
  const DataVersion & aVersion,
  const DataVersion & aReference
)

Jest to zoptymalizowana implementacja algorytmu, która umożliwia porównywanie wersji.

Po stronie klienta wersja otrzymana z usługi jest zawsze najnowszą wersją.

JestWersjaaktualna lub równa

bool IsVersionNewerOrEqual(
  const DataVersion & aVersion,
  const DataVersion & aReference
)

Zlokalizuj

TraitUpdatableDataSink * Locate(
  TraitDataHandle aTraitDataHandle,
  const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog
)

Funkcja służąca do znajdowania TraitUpdatableDataSink w katalogu TraitDataSink.

Szczegóły
Parametry
[in] aTraitDataHandle
Uchwyt ujścia do wyszukiwania.
[in] aDataSinkCatalog
Katalog do wyszukania.
Zwroty
Wskaźnik do parametru TraitUpdatableDataSink; wartość NULL, jeśli uchwyt nie istnieje lub wskazuje nieaktualizowalny TraitDataSink.

Zdarzenie logu

event_id_t LogEvent(
  const EventSchema & inSchema,
  nl::Weave::TLV::TLVReader & inData
)

Rejestrowanie zdarzenia ze wstępnie zserializowanego formularza.

Funkcja rejestruje zdarzenie reprezentowane przez nl::Weave::TLV::TLVReader. Oznacza to, że dane o zdarzeniach są już zserializowane w pamięci pod postacią elementu nl::Weave::TLV::TLVReader. Element nl::Weave::TLV::TLVReader powinien zawierać co najmniej jeden element danych. Element musi być strukturą. Pierwszy element odczytywany w czytniku jest traktowany jako dane zdarzenia i przechowywany w dzienniku zdarzeń. Dane zdarzenia MUSZĄ zawierać tagi kontekstowe, które należy interpretować w schemacie określonym w inIDID i inEventType. Tag pierwszego elementu będzie ignorowany, a system dziennika zdarzeń zastąpi go zdarzeniem Data.

Zdarzenie jest rejestrowane, jeśli jego wartość inImportance przekracza próg logowania określony w zasadzie LoggingConfiguration. Jeśli znaczenie zdarzenia nie osiągnie bieżącego progu, zostanie ono usunięte, a funkcja zwróci 0 jako identyfikator zdarzenia.

Wariant tego wywołania domyślnie określa wszystkie domyślne opcje zdarzeń:

  • zdarzenie ma sygnaturę czasową bieżącego momentu połączenia;
  • zdarzenie jest oznaczone jako dotyczące urządzenia, które nawiązuje połączenie;
  • wydarzenie jest samodzielnie i nie odnosi się do innych wydarzeń,
  • zdarzenie jest oznaczone jako pilne,

Szczegóły
Parametry
[in] inSchema
Schemat definiujący znaczenie, identyfikator profilu i strukturę tego zdarzenia.
[in] inData
Czytnik TLV, który jako pierwszy zawiera dane o zdarzeniu.
Zwroty
event_id_t Identyfikator zdarzenia, jeśli zdarzenie zostało zapisane w dzienniku. W przeciwnym razie ma wartość 0.

Zdarzenie logu

event_id_t LogEvent(
  const EventSchema & inSchema,
  nl::Weave::TLV::TLVReader & inData,
  const EventOptions *inOptions
)

Rejestruj zdarzenie ze wstępnie zserializowanego formularza z dodatkowymi opcjami.

Funkcja rejestruje zdarzenie reprezentowane przez nl::Weave::TLV::TLVReader. Oznacza to, że dane o zdarzeniach są już zserializowane w pamięci pod postacią elementu nl::Weave::TLV::TLVReader. Element nl::Weave::TLV::TLVReader powinien zawierać co najmniej jeden element danych. Element musi być strukturą. Pierwszy element odczytywany w czytniku jest traktowany jako dane zdarzenia i przechowywany w dzienniku zdarzeń. Dane zdarzenia MUSZĄ zawierać tagi kontekstowe, które należy interpretować w schemacie określonym w inIDID i inEventType. Tag pierwszego elementu będzie ignorowany, a system dziennika zdarzeń zastąpi go zdarzeniem Data.

Zdarzenie jest rejestrowane, jeśli jego wartość inImportance przekracza próg logowania określony w zasadzie LoggingConfiguration. Jeśli znaczenie zdarzenia nie osiągnie bieżącego progu, zostanie ono usunięte, a funkcja zwróci 0 jako identyfikator zdarzenia.

Ten wariant wywołania zezwala rozmówcy na ustawienie dowolnej kombinacji właściwości EventOptions:

  • sygnatura czasowa, która w momencie połączenia wskazuje domyślną godzinę równą 0;
  • "root" źródło zdarzenia (źródło zdarzenia i identyfikator cechy). Jeśli wartość jest ustawiona na NULL, zdarzenie zostanie oznaczone jako domyślne na podstawie bieżącego urządzenia.
  • identyfikator powiązanego zdarzenia (jeśli ma on identyfikator 0), oznacza to, że zdarzenie nie jest powiązane z żadnym innym zdarzeniem;
  • pilne; domyślnie niepilny.

Szczegóły
Parametry
[in] inSchema
Schemat definiujący znaczenie, identyfikator profilu i strukturę tego zdarzenia.
[in] inData
Czytnik TLV, który jako pierwszy zawiera dane o zdarzeniu. Nie może być wartością NULL
[in] inOptions
Opcje metadanych zdarzenia. Może mieć wartość NULL.
Zwroty
event_id_t Identyfikator zdarzenia, jeśli zdarzenie zostało zapisane w dzienniku. W przeciwnym razie ma wartość 0.

Zdarzenie logu

event_id_t LogEvent(
  const EventSchema & inSchema,
  EventWriterFunct inEventWriter,
  void *inAppData
)

Rejestrowanie zdarzenia przez wywołanie zwrotne.

Funkcja rejestruje zdarzenie reprezentowane przez EventWriterFunct i kontekst aplikacji appData. Funkcja zapisuje metadane zdarzenia i wywołuje metodę inEventWriter za pomocą pliku nl::Weave::TLV::TLVWriter i kontekstu inAppData, aby kod użytkownika mógł emitować dane zdarzenia bezpośrednio do dziennika zdarzeń. Ta forma logowania zdarzeń pozwala zminimalizować wykorzystanie pamięci, ponieważ dane zdarzeń są serializowane bezpośrednio do docelowego bufora. Dane zdarzenia MUSZĄ zawierać tagi kontekstowe, które należy interpretować w schemacie wskazanym przez inProfileID i inEventType. Tag pierwszego elementu będzie ignorowany, a system dziennika zdarzeń zastąpi go zdarzeniem Data.

Zdarzenie jest rejestrowane, jeśli jego wartość inImportance przekracza próg logowania określony w zasadzie LoggingConfiguration. Jeśli znaczenie zdarzenia nie osiągnie bieżącego progu, zostanie ono usunięte, a funkcja zwróci 0 jako identyfikator zdarzenia.

Wariant tego wywołania domyślnie określa wszystkie domyślne opcje zdarzeń:

  • zdarzenie ma sygnaturę czasową bieżącego momentu połączenia;
  • zdarzenie jest oznaczone jako dotyczące urządzenia, które nawiązuje połączenie;
  • wydarzenie jest samodzielnie i nie odnosi się do innych wydarzeń,
  • zdarzenie jest oznaczone jako pilne,

Szczegóły
Parametry
[in] inSchema
Schemat definiujący znaczenie, identyfikator profilu i strukturę tego zdarzenia.
[in] inEventWriter
Wywołanie zwrotne do rzeczywistej serializacji danych zdarzenia
[in] inAppData
Kontekst aplikacji do wywołania zwrotnego.
Zwroty
event_id_t Identyfikator zdarzenia, jeśli zdarzenie zostało zapisane w dzienniku. W przeciwnym razie ma wartość 0.

Zdarzenie logu

event_id_t LogEvent(
  const EventSchema & inSchema,
  EventWriterFunct inEventWriter,
  void *inAppData,
  const EventOptions *inOptions
)

Rejestrowanie zdarzenia przez wywołanie zwrotne z opcjami.

Funkcja rejestruje zdarzenie reprezentowane przez EventWriterFunct i kontekst aplikacji appData. Funkcja zapisuje metadane zdarzenia i wywołuje metodę inEventWriter za pomocą pliku nl::Weave::TLV::TLVWriter i kontekstu inAppData, aby kod użytkownika mógł emitować dane zdarzenia bezpośrednio do dziennika zdarzeń. Ta forma logowania zdarzeń pozwala zminimalizować wykorzystanie pamięci, ponieważ dane zdarzeń są serializowane bezpośrednio do docelowego bufora. Dane zdarzenia MUSZĄ zawierać tagi kontekstowe, które należy interpretować w schemacie wskazanym przez inProfileID i inEventType. Tag pierwszego elementu będzie ignorowany, a system dziennika zdarzeń zastąpi go zdarzeniem Data.

Zdarzenie jest rejestrowane, jeśli jego wartość inImportance przekracza próg logowania określony w zasadzie LoggingConfiguration. Jeśli znaczenie zdarzenia nie osiągnie bieżącego progu, zostanie ono usunięte, a funkcja zwróci 0 jako identyfikator zdarzenia.

Ten wariant wywołania zezwala rozmówcy na ustawienie dowolnej kombinacji właściwości EventOptions:

  • sygnatura czasowa, która w momencie połączenia wskazuje domyślną godzinę równą 0;
  • "root" źródło zdarzenia (źródło zdarzenia i identyfikator cechy). Jeśli wartość jest ustawiona na NULL, zdarzenie zostanie oznaczone jako domyślne na podstawie bieżącego urządzenia.
  • identyfikator powiązanego zdarzenia (jeśli ma on identyfikator 0), oznacza to, że zdarzenie nie jest powiązane z żadnym innym zdarzeniem;
  • pilne; domyślnie niepilny.

Szczegóły
Parametry
[in] inSchema
Schemat definiujący znaczenie, identyfikator profilu i strukturę tego zdarzenia.
[in] inEventWriter
Wywołanie zwrotne do rzeczywistej serializacji danych zdarzenia
[in] inAppData
Kontekst aplikacji do wywołania zwrotnego.
[in] inOptions
Opcje metadanych zdarzenia. Może mieć wartość NULL.
Zwroty
event_id_t Identyfikator zdarzenia, jeśli zdarzenie zostało zapisane w dzienniku. W przeciwnym razie ma wartość 0.

LogFreeform,

event_id_t LogFreeform(
  ImportanceType inImportance,
  const char *inFormat,
  ...
)

LogFreeform emituje dowolny ciąg znaków do domyślnego strumienia zdarzeń.

Ciąg znaków zostanie ujęty w strukturę zdarzenia debugowania, która ma taką samą strukturę jak inne zarejestrowane ciągi znaków. Identyfikatorem zdarzenia będzie identyfikator zdarzenia Nest Debug, a typ zdarzenia to kNestDebug_StringLogEntryEvent.

Szczegóły
Parametry
[in] inImportance
Znaczenie wpisu w dzienniku. Jeśli znaczenie jest mniejsze niż bieżące, zdarzenie nie jest w rzeczywistości rejestrowane.
[in] inFormat
Zgodność z formatem ciągu znaków printf (wraz z argumentami do sformatowania)
Zwroty
event_id_t Identyfikator zdarzenia, jeśli zdarzenie zostało zapisane w dzienniku. W przeciwnym razie ma wartość 0.

Poszukaj elementuZ tagiem

WEAVE_ERROR LookForElementWithTag(
  const nl::Weave::TLV::TLVReader & aSrcReader,
  const uint64_t aTagInApiForm,
  nl::Weave::TLV::TLVReader *apDstReader
)

Zapis tekstowy

WEAVE_ERROR PlainTextWriter(
  TLVWriter & ioWriter,
  uint8_t inDataTag,
  void *appData
)

Funkcja pomocnicza do wyświetlania dowolnego tekstu jako zdarzenia debugowania.

Zdarzenie debugowania to struktura z regionem logu i dowolnym tekstem.

Szczegóły
Parametry
[in,out] ioWriter
Pisarz, który napisze wydarzenie
[in] appData
wskaźnik do DebugLogContext, czyli struktury zawierającej format ciągu znaków, argumenty i region logu
[in] inDataTag
Opis kontekstowy dla TLV, który właśnie piszemy. Nieużywane, ale wymagane przez typedef for EventWriterFunct.
Wartości zwracane
WEAVE_NO_ERROR
Powodzenie.
other
Inne błędy, które zwracają wartość ioWriter.

Zapis tekstowy

WEAVE_ERROR PlainTextWriter(
  ::nl::Weave::TLV::TLVWriter & ioWriter,
  uint8_t inDataTag,
  void *appData
)

Funkcja pomocnicza do wyświetlania dowolnego tekstu jako zdarzenia debugowania.

Zdarzenie debugowania to struktura z regionem logu i dowolnym tekstem.

Szczegóły
Parametry
[in,out] ioWriter
Pisarz, który napisze wydarzenie
[in] inDataTag
Tag do emisji
[in] appData
wskaźnik do DebugLogContext, czyli struktury zawierającej format ciągu znaków, argumenty i region logu
Wartości zwracane
WEAVE_NO_ERROR
Powodzenie.
other
Inne błędy, które mogą być zwracane przez funkcję ioWriter.

operator!=

bool operator!=(
  const ResourceIdentifier & lhs,
  const ResourceIdentifier & rhs
)

operator==

bool operator==(
  const ResourceIdentifier & lhs,
  const ResourceIdentifier & rhs
)