nl:: Weave:: Profiles:: DataManagement_Current
Ta przestrzeń nazw obejmuje wszystkie interfejsy Weave na potrzeby profilu zarządzania danymi Weave (WDM), które są obecnie obsługiwane w środowisku produkcyjnym.
Podsumowanie
Definicje typów |
|
---|---|
CommandFlags
|
typedef |
DataVersion
|
typedefuint64_t
|
EventProcessor
|
typedefvoid *
|
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData)
|
typedef Funkcja, która dostarcza element eventData na potrzeby podsystemu logowania zdarzeń. |
FetchExternalEventsFunct)(EventLoadOutContext *aContext)
|
typedef Prototyp funkcji do obsługi wywołań zwrotnych platformy pobierających dane zdarzenia. |
GenericTraitSinkCatalog
|
typedef |
GenericTraitSourceCatalog
|
typedef |
ImportanceType
|
typedef Znaczenie wpisu w dzienniku. |
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)
|
typedefvoid(*
iterator uchwytów cech. |
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)
|
typedef |
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)
|
typedefvoid(*
Prototyp funkcji wywołania zwrotnego wywoływanego po dostarczeniu zdarzeń zewnętrznych do zdalnego subskrybenta. |
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)
|
typedefvoid(*
Prototyp funkcji dla wywołania zwrotnego wywoływanego po usunięciu zdarzeń zewnętrznych z buforów. |
PropertyDictionaryKey
|
typedefuint16_t
|
PropertyPathHandle
|
typedefuint32_t
Właściwość PropertyPathHandle to unikalny 32-bitowy numeryczny hasz ścieżki WDM względem poziomu głównego instancji cechy. |
PropertySchemaHandle
|
typedefuint16_t
|
SchemaVersion
|
typedefuint16_t
|
SingleResourceSinkTraitCatalog
|
typedef |
SingleResourceSourceTraitCatalog
|
typedef |
TimestampType
|
typedef Prawidłowość i typ sygnatury czasowej uwzględnionej w EventOptions. |
TraitDataHandle
|
typedefuint16_t
|
duration_t
|
nl::Weave::Profiles::DataManagement_Current::duration_tuint32_t
Typ używany do opisania czasu trwania w milisekundach. |
event_id_t
|
nl::Weave::Profiles::DataManagement_Current::event_id_tuint32_t
Typ identyfikatora wydarzenia. |
timestamp_t
|
nl::Weave::Profiles::DataManagement_Current::timestamp_tuint32_t
Typ służący do opisania sygnatury czasowej w milisekundach. |
utc_timestamp_t
|
nl::Weave::Profiles::DataManagement_Current::utc_timestamp_tuint64_t
Typ służący do opisu 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 eventdata na bufor zdarzeń.
|
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 do porównywania wersji.
|
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
|
bool
|
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
|
Funkcja narzędziowa, która znajduje obiekt TraitUpdatableDataSink w katalogu TraitDataSink.
|
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData)
|
Zarejestruj zdarzenie ze wstępnie przedstawionego 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)
|
Zarejestruj zdarzenie za pomocą wywołania zwrotnego.
|
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
|
Zarejestruj zdarzenie za pomocą wywołania zwrotnego z opcjami.
|
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
|
LogFreeform wysyła 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 przesyłania dowolnego tekstu jako zdarzenia debugowania.
|
PlainTextWriter(::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
|
Funkcja pomocnicza do przesyłania dowolnego tekstu jako zdarzenia debugowania.
|
operator!=(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
|
bool
|
operator==(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
|
bool
|
Związki |
|
---|---|
nl:: |
Związek, który udostępnia system zestawu aplikacji lub sygnaturę czasową UTC. |
Wyliczenia
@100
@100
Tagi zdarzenia kNestDebug_StringLogEntryEvent.
Właściwości | |
---|---|
kTag_Message
|
Ciąg tekstowy zawierający faktyczny komunikat o debugowaniu. |
kTag_Region
|
32-bitowy bez podpisu wskazujący region logu, tj. moduł, do którego odnosi się komunikat logu. |
@101
@101
Tagi zdarzenia kNestDebug_TokenizedLogEntryEvent.
Właściwości | |
---|---|
kTag_Args
|
Tablica argumentów, które mają być wysyłane wraz z komunikatem tokena. |
kTag_Token
|
32-bitowa wartość bez znaku odpowiadająca tokenowi. |
@102
@102
Tagi utrwalania zdarzeń.
@104
@104
Typy komunikatów profilu WDM.
Wartości te są wywoływane w specyfikacji zarządzania danymi.
@105
@105
Kody stanu specyficzne dla WDM.
@147
@147
@95
@95
Tagi ustawień Logging (Rejestrowanie).
Właściwości | |
---|---|
kTag_CurrentImportance
|
Obecne znaczenie logowania, wartość ma typ ImportanceType. |
kTag_ImportanceExpiration
|
Czas (w sekundach UTC), w którym bieżące ustawienia logowania z podwyższonym poziomem uprawnień przywracają wartości domyślne. |
kTag_LoggingDestination
|
Adres URL oznaczający miejsce docelowe przesyłania dziennika. |
kTag_MaximumLogUploadInterval
|
Maksymalny czas trwania (w sekundach) między automatycznie wyzwalanymi próbami przesłania dziennika. |
kTag_MinimumLogUploadInterval
|
Minimalny czas (w sekundach) między automatycznie wyzwalanymi próbami przesłania dziennika. |
kTag_TraitLoggingImportance
|
Opcjonalna tablica, która wybiórczo mapuje wybrane profile na wyższe poziomy logowania. Każdy element w tablicy ma postać (profil, ścieżkę, wagę logiczną), która selektywnie podnosi logowanie z podzbioru systemu. Priorytet logowania profilu o podwyższonym standardzie ma znaczenie tylko wtedy, gdy priorytet logowania przekracza aktualną wagę i podlega temu samemu czasowi ważności co wartość obecna. |
@96
@96
Tagi funkcji logowania.
Właściwości | |
---|---|
kTag_LogBufferingCapacity
|
32-bitowa nieoznaczona liczba całkowita opisująca pojemność buforowania logów w kB. |
kTag_LoggingVolume
|
32-bitowa nieoznaczona liczba całkowita opisująca 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 nieulotną pamięć logów. |
kTag_SupportsPerTraitVerbosity
|
Wartość logiczna wskazująca, czy urządzenie obsługuje ustawienia szczegółowości według cech. |
kTag_SupportsStreaming
|
Wartość logiczna wskazująca, czy urządzenie obsługuje strumieniowe przesyłanie logów. |
@97
@97
Tagi metadanych zdarzenia.
Pełną semantykę wartości tagów znajdziesz w specyfikacji projektowania zdarzeń.
Właściwości | |
---|---|
kTag_EventData
|
Opcjonalnie. same dane zdarzeń. Jeśli pole jest puste, domyślnie przyjmuje się pustą strukturę. |
kTag_EventDeltaSystemTime
|
Wewnętrzny tag WDM, różnica czasu w stosunku do poprzedniego zdarzenia w kodowaniu. |
kTag_EventDeltaUTCTime
|
Wewnętrzny tag WDM, różnica czasu w stosunku do poprzedniego zdarzenia w kodowaniu. |
kTag_EventID
|
Numer w sekwencji zdarzenia wyrażony jako 64-bitowa ilość bez znaku. Musi być sekwencja, a przeskoki w sekwencji oznaczają luki w zdarzeniach. |
kTag_EventImportance
|
Znaczenie zdarzenia. |
kTag_EventResourceID
|
Opcjonalnie. Wartość to identyfikator zasobu, którego dotyczy zdarzenie. W przypadku pominięcia tego parametru wartość jest taka sama jak wartość parametru kTag_EventSource |
kTag_EventSource
|
NodeID urządzenia, które wygenerowało zdarzenie. |
kTag_EventSystemTimestamp
|
Opcjonalnie. Sygnatura czasowa systemowa zdarzenia w milisekundach. |
kTag_EventTraitInstanceID
|
Opcjonalne – wystąpienie cechy, która wywołała zdarzenie. |
kTag_EventTraitProfileID
|
Obowiązkowe. 32-bitowa liczba całkowita bez znaku, która jest równa identyfikatorowi ProfileID cechy. |
kTag_EventType
|
Obowiązkowe. 16-bitowa nieoznaczona liczba całkowita, która jest równa parametrowi wdl.event.id dla tego typu zdarzenia. |
kTag_EventUTCTimestamp
|
Opcjonalnie. Sygnatura czasowa zdarzenia UTC (w milisekundach). |
kTag_ExternalEventStructure
|
Wewnętrzny tag zdarzeń zewnętrznych. Nie są one nigdy przesyłane przez przewody i nie powinny być używane poza biblioteką Weave. |
kTag_RelatedEventID
|
Opcjonalnie. Identyfikator zdarzenia, z którym jest powiązane to zdarzenie. Jeśli nie zostanie podana, wartość będzie równa wartości parametru kTag_EventID. |
kTag_RelatedEventImportance
|
Opcjonalnie. Znaczenie powiązanego zdarzenia. Jeśli nie zostanie podana, wartość będzie równa wartości parametru kTag_EventImportance. |
@98
@98
Definicje profili cechy debugowania.
99
@99
Typy zdarzeń związanych z cechą Nest Debug.
Właściwości | |
---|---|
kNestDebug_StringLogEntryEvent
|
Zdarzenie dotyczące komunikatu debugowania dowolnego ciągu znaków. |
kNestDebug_TokenizedHeaderEntryEvent
|
Zdarzenie do przekazywania tokenizowanych informacji nagłówka. |
kNestDebug_TokenizedLogEntryEvent
|
Zdarzenie dla tokenizowanej wiadomości debugowania. |
CommandFlags
CommandFlags
Właściwości | |
---|---|
kCommandFlag_ActionTimeValid
|
Ustaw, kiedy czas działania jest prawidłowy. |
kCommandFlag_ExpiryTimeValid
|
Ustaw, kiedy jest poprawna data ważności. |
kCommandFlag_InitiationTimeValid
|
Ustaw, gdy czas inicjowania jest prawidłowy. |
kCommandFlag_IsOneWay
|
Ustaw, gdy polecenie jest jednokierunkowe. |
kCommandFlag_MustBeVersionValid
|
Ustaw, gdy pole wersji jest prawidłowe. |
ImportanceType
ImportanceType
Znaczenie wpisu w dzienniku.
Znaczenie jest używane jako sposób filtrowania zdarzeń, zanim zostaną one wysłane do dziennika. Gdy zdarzenie znajdzie się w dzienniku, nie będą tworzone żadne dodatkowe czynności mające na celu wykasowanie go z dziennika. Poziom ważności służy do priorytetowego przechowywania zdarzeń. Jeśli ważne wydarzenie zostanie dodane do pełnego bufora, wydarzenia będą pomijane według ważności (i wieku) w celu jego dostosowania. Poziomy ważności mają więc tylko wartość względną. Jeśli system używa tylko 1 poziomu ważności, zdarzenia są porzucane tylko według wieku (np. bufor dzwonka).
Właściwości | |
---|---|
Debug
|
Znaczenie debugowania oznacza wpisy w logu, które interesują programistów systemu, i jest używane głównie na etapie programowania. Logi ważności debugowania nie są uwzględniane w budżetach związanych z przepustowością i mocą ograniczonych urządzeń, dlatego w systemach produkcyjnych można ich używać tylko w ograniczonym czasie. |
Info
|
Znaczenie informacji oznacza wpisy logu, które zapewniają dodatkowe statystyki i diagnostykę działającego systemu. Poziom rejestrowania informacji może być używany w systemie produkcyjnym przez dłuższy czas lub może być używany jako domyślny poziom logowania podczas testów funkcjonalnych. Na urządzeniach z ograniczonym dostępem wpisy rejestrowane na poziomie informacji muszą być uwzględniane w budżecie na przepustowość i pamięć, ale nie w budżecie energetycznym. |
Production
|
Znaczenie produkcji oznacza wpisy logu, które są używane do ciągłego monitorowania i konserwacji ekosystemu Nest. W przypadku urządzeń z ograniczonym dostępem wpisy zarejestrowane ze współczynnikiem ważności produkcyjnej muszą być uwzględniane w budżecie mocy i pamięci, ponieważ zakłada się, że są one zawsze rejestrowane i wyłączane z urządzenia. |
ProductionCritical
|
Waga o znaczeniu krytycznym dla produkcji oznacza zdarzenia, których utrata bezpośrednio wpłyną na funkcje dostępne dla klientów. Aplikacje mogą wykorzystywać utratę zdarzeń o krytycznym znaczeniu produkcyjnym do wskazywania awarii systemu. W przypadku urządzeń z ograniczonym dostępem wpisy zarejestrowane o znaczeniu o znaczeniu krytycznym dla środowiska produkcyjnego muszą być uwzględniane w budżecie mocy i pamięci, ponieważ są one zawsze rejestrowane i wyłączane z urządzenia. |
LoggingManagementStates
LoggingManagementStates
Właściwości | |
---|---|
kLoggingManagementState_Holdoff
|
Wyładowywanie logów zostało zakończone; nie uruchomimy ponownie logu, dopóki okres wstrzymania nie dobiegnie końca. |
kLoggingManagementState_Idle
|
Nie trwa żadne przesyłanie logów. Odciążanie logów może się rozpocząć bez ograniczeń. |
kLoggingManagementState_InProgress
|
Trwa wyładowanie logu. |
kLoggingManagementState_Shutdown
|
Nie może wykonywać żadnych operacji logowania. |
Definicje typów
CommandFlags
enum nl::Weave::Profiles::DataManagement_Current::CommandFlags CommandFlags
DataVersion
uint64_t DataVersion
EventProcessor
void * EventProcessor
EventWriterFunct
WEAVE_ERROR(* EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData)
Funkcja, która dostarcza element eventData na potrzeby podsystemu logowania zdarzeń.
Funkcje tego typu powinny udostępniać element eventData na potrzeby podsystemu logowania zdarzeń. Funkcje tego typu są wywoływane po wygenerowaniu przez podsystem zdarzeń wszystkich wymaganych metadanych. Funkcja jest wywoływana za pomocą obiektu nl::Weave::TLV::TLVWriter, do którego wysyła pojedynczy element TLV otagowany kTag_EventData. Wartość tego elementu MUSI być strukturą zawierającą dane zdarzenia. Same dane zdarzenia muszą być uporządkowane za pomocą tagów kontekstowych.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
PlainTextWriter
EventWriterTLVCopy
FetchExternalEventsFunct
WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)
Prototyp funkcji do obsługi wywołań zwrotnych platformy pobierających dane zdarzenia.
Ta funkcja pobierania (podobnie jak FetchEventsER) zwraca wszystkie zdarzenia z EventLoadOutContext.mStartingEventID przez ExternalEvents.mLastEventID.
Wskaźnik kontekstu jest typu FetchExternalEventsContext. Obejmuje to m.in. obiekt EventLoadOutContext i kilka zmiennych pomocniczych na potrzeby formatu TLV. Zawiera też wskaźnik do struktury ExternalEvents, która została utworzona podczas rejestracji wywołania zwrotnego. Określa zakres identyfikatorów zdarzeń dla wywołania zwrotnego.
Po powrocie z funkcji obiekt EventLoadOutContext.mCurrentEventID powinien odzwierciedlać pierwszy identyfikator zdarzenia, który nie został pomyślnie zapisany w buforze TLV. Platforma musi zapisać w zapisie TLV nagłówek i dane zdarzeń w prawidłowym formacie określonym przez protokół EventLogging. Platforma musi też utrzymywać niepowtarzalność zdarzeń i sygnatur czasowych.
Wszystkie błędy TLV należy przenieść na wyższe poziomy. Na przykład zabraknie miejsca w buforze spowoduje wysłanie wiadomości, a po niej kolejne wywołanie zwrotne z pozostałym identyfikatorem zdarzenia.
Szczegóły | |||||||||
---|---|---|---|---|---|---|---|---|---|
Zwracane wartości |
|
GenericTraitSinkCatalog
GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog
GenericTraitSourceCatalog
GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog
ImportanceType
enum nl::Weave::Profiles::DataManagement_Current::ImportanceType ImportanceType
Znaczenie wpisu w dzienniku.
Znaczenie jest używane jako sposób filtrowania zdarzeń, zanim zostaną one wysłane do dziennika. Gdy zdarzenie znajdzie się w dzienniku, nie będą tworzone żadne dodatkowe czynności mające na celu wykasowanie go z dziennika. Poziom ważności służy do priorytetowego przechowywania zdarzeń. Jeśli ważne wydarzenie zostanie dodane do pełnego bufora, wydarzenia będą pomijane według ważności (i wieku) w celu jego dostosowania. Poziomy ważności mają więc tylko wartość względną. Jeśli system używa tylko 1 poziomu ważności, zdarzenia są porzucane tylko według wieku (np. bufor dzwonka).
IteratorCallback
void(* IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)
iterator uchwytów cech.
LoggingBufferHandler
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 po dostarczeniu zdarzeń zewnętrznych do zdalnego subskrybenta.
Gdy zdarzenia zewnętrzne są dostarczane do subskrybenta zdalnego, wyszukiwarka wysyła powiadomienie do dostawcy zdarzeń zewnętrznych. Wywołanie zwrotne zawiera zdarzenie związane z ostatnim przesłanym identyfikatorem oraz identyfikator subskrybenta, który otrzymał to zdarzenie.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
NotifyExternalEventsEvictedFunct
void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)
Prototyp funkcji dla wywołania zwrotnego wywoływanego po usunięciu zdarzeń zewnętrznych z buforów.
Po usunięciu obiektu zdarzeń zewnętrznych z bufora wiadomości wychodzących wyszukiwarka wyśle powiadomienie do zewnętrznego dostawcy zdarzeń. Wywołanie zwrotne zawiera zdarzenie zewnętrzne do wykluczenia.
Szczegóły | |||
---|---|---|---|
Parametry |
|
PropertyDictionaryKey
uint16_t PropertyDictionaryKey
PropertyPathHandle
uint32_t PropertyPathHandle
Właściwość PropertyPathHandle to unikalny 32-bitowy numeryczny hasz ścieżki WDM względem poziomu głównego instancji cechy.
Składa się z 2 części:
- Dolna 16-bitowa liczba mapowana na statyczną część schematu.
- Gdy dolne 16 bitów odnoszą się do ścieżki w elemencie słownika, widoczna jest górna liczba 16-bitowa reprezentująca klucz słownika powiązany z tym elementem. Jeśli dolne 16 bitów odnoszą się do elementu spoza słownika, górne 16 bitów powinno wynosić 0.
Niektóre cechy:
- Każda cecha ma własną przestrzeń reklamową ścieżki właściwości.
- Każda unikalna ścieżka podrzędna WDM ma podobnie niepowtarzalną opcję PropertyPathHandle.
- Obiekty PropertyPathHandles są generowane automatycznie (na razie ręcznie) przez kompilator cech z IDL i są reprezentowane jako lista wyliczeniowa w pliku nagłówka odpowiedniej cechy.
- Dzięki temu konstrukcja logika aplikacji nigdy nie musi bezpośrednio zajmować się ścieżkami WDM. Ich interakcje z WDM odbywają się wyłącznie z wykorzystaniem tych nicków.
- Uchwyty ścieżek mają 2 zarezerwowane wartości:
- 0 oznacza uchwyt „NULL”
- 1 oznacza uchwyt, który wskazuje poziom główny instancji cechy.
PropertySchemaHandle
uint16_t PropertySchemaHandle
SchemaVersion
uint16_t SchemaVersion
SingleResourceSinkTraitCatalog
SingleResourceTraitCatalog< TraitDataSink > SingleResourceSinkTraitCatalog
SingleResourceSourceTraitCatalog
SingleResourceTraitCatalog< TraitDataSource > SingleResourceSourceTraitCatalog
TimestampType
enum nl::Weave::Profiles::DataManagement_Current::TimestampType TimestampType
Prawidłowość i typ sygnatury czasowej uwzględnionej w EventOptions.
TraitDataHandle
uint16_t TraitDataHandle
duration_t
uint32_t duration_t
Typ używany do opisania czasu trwania w milisekundach.
event_id_t
uint32_t event_id_t
Typ identyfikatora wydarzenia.
timestamp_t
uint32_t timestamp_t
Typ służący do opisania sygnatury czasowej w milisekundach.
utc_timestamp_t
uint64_t utc_timestamp_t
Typ służący do opisu sygnatury czasowej UTC w milisekundach.
Zmienne
sInstance
LoggingManagement sInstance
sLogFileName
char sLogFileName[] = "topazlog"
Funkcje
BdxErrorHandler
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 )
BdxRejectHandler
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 )
BdxXferDoneHandler
void BdxXferDoneHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer )
BdxXferErrorHandler
void BdxXferErrorHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aXferError )
CreatePropertyPathHandle
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 eventdata na bufor zdarzeń.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
GetPropertyDictionaryKey
PropertyDictionaryKey GetPropertyDictionaryKey( PropertyPathHandle aHandle )
GetPropertySchemaHandle
PropertySchemaHandle GetPropertySchemaHandle( PropertyPathHandle aHandle )
IsNullPropertyPathHandle
bool IsNullPropertyPathHandle( PropertyPathHandle aHandle )
IsRootPropertyPathHandle
bool IsRootPropertyPathHandle( PropertyPathHandle aHandle )
IsVersionNewer
bool IsVersionNewer( const DataVersion & aVersion, const DataVersion & aReference )
Jest to zoptymalizowana implementacja algorytmu do porównywania wersji.
Po stronie klienta wersja otrzymana z usługi jest zawsze najnowsza.
IsVersionNewerOrEqual
bool IsVersionNewerOrEqual( const DataVersion & aVersion, const DataVersion & aReference )
Zlokalizuj
TraitUpdatableDataSink * Locate( TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog )
Funkcja narzędziowa, która znajduje obiekt TraitUpdatableDataSink w katalogu TraitDataSink.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
Wskaźnik do TraitUpdatableDataSink; ma wartość NULL, jeśli uchwyt nie istnieje lub wskazuje na niemożliwy do zaktualizowania TraitDataSink.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData )
Zarejestruj zdarzenie ze wstępnie przedstawionego formularza.
Funkcja rejestruje zdarzenie w formacie nl::Weave::TLV::TLVReader. Oznacza to, że reprezentacja danych zdarzenia jest już zserializowana w pamięci, na której bazuje tag nl::Weave::TLV::TLVReader. Element nl::Weave::TLV::TLVReader powinien zawierać co najmniej 1 element danych, który musi mieć strukturę. Pierwszy element odczytany z czytnika jest traktowany jako dane zdarzenia i przechowywany w dzienniku zdarzeń. Dane zdarzenia MUSZĄ zawierać tagi kontekstowe do interpretacji w schemacie identyfikowanym przez inProfileID i inEventType. Tag pierwszego elementu zostanie zignorowany. System rejestrowania zdarzeń zastąpi go tagiem eventData.
Zdarzenie jest rejestrowane, gdy jego wartość inImportance przekracza próg logowania określony we właściwości LoggingConfiguration. Jeśli waga zdarzenia nie osiągnie obecnego progu, zostanie ono usunięte, a funkcja zwróci wynik 0
jako identyfikator zdarzenia.
Ten wariant wywołania niejawnie określa wszystkie domyślne opcje zdarzeń:
- zdarzenie jest oznaczone sygnaturą czasową z bieżącą godziną w momencie wywołania,
- jeśli zdarzenie jest oznaczone jako powiązane z urządzeniem, z którego nawiązuje połączenie,
- jest samodzielne i nie ma związku z innymi wydarzeniami,
- wydarzenie jest oznaczone jako mało pilne,
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
event_id_t Identyfikator zdarzenia, jeśli zdarzenie zostało zapisane w dzienniku. W przeciwnym razie ma wartość 0.
|
LogEvent
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 w formacie nl::Weave::TLV::TLVReader. Oznacza to, że reprezentacja danych zdarzenia jest już zserializowana w pamięci, na której bazuje tag nl::Weave::TLV::TLVReader. Element nl::Weave::TLV::TLVReader powinien zawierać co najmniej 1 element danych, który musi mieć strukturę. Pierwszy element odczytany z czytnika jest traktowany jako dane zdarzenia i przechowywany w dzienniku zdarzeń. Dane zdarzenia MUSZĄ zawierać tagi kontekstowe do interpretacji w schemacie identyfikowanym przez inProfileID i inEventType. Tag pierwszego elementu zostanie zignorowany. System rejestrowania zdarzeń zastąpi go tagiem eventData.
Zdarzenie jest rejestrowane, gdy jego wartość inImportance przekracza próg logowania określony we właściwości LoggingConfiguration. Jeśli waga zdarzenia nie osiągnie obecnego progu, zostanie ono usunięte, a funkcja zwróci wynik 0
jako identyfikator zdarzenia.
Ten wariant wywołania pozwala wywołującemu ustawić dowolną kombinację wartości EventOptions
:
- sygnatura czasowa, gdy 0 przyjmuje domyślnie bieżącą godzinę w momencie połączenia,
- Sekcja „root” źródła zdarzenia (źródło zdarzenia i identyfikator cechy). Jeśli ma wartość NULL, domyślnie jest używane bieżące urządzenie. Zdarzenie jest oznaczone jako odnoszące się do urządzenia, które wykonuje wywołanie.
- identyfikator powiązanego zdarzenia na potrzeby grupowania identyfikatorów zdarzeń. Jeśli identyfikator powiązanego zdarzenia to 0, zdarzenie jest oznaczone jako niepowiązane z żadnymi innymi zdarzeniami.
- pilne; domyślnie niepilne.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwroty |
event_id_t Identyfikator zdarzenia, jeśli zdarzenie zostało zapisane w dzienniku. W przeciwnym razie ma wartość 0.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData )
Zarejestruj zdarzenie za pomocą wywołania zwrotnego.
Funkcja rejestruje zdarzenie reprezentowane jako EventWriterFunct i kontekst appData
specyficzny dla aplikacji. Funkcja zapisuje metadane zdarzenia i wywołuje inEventWriter
z odwołaniem nl::Weave::TLV::TLVWriter i kontekstem inAppData
, dzięki czemu kod użytkownika może wysyłać dane zdarzenia bezpośrednio do dziennika zdarzeń. Ta forma logowania zdarzeń minimalizuje wykorzystanie pamięci, ponieważ dane zdarzeń są serializowane bezpośrednio w buforze docelowym. Dane zdarzenia MUSZĄ zawierać tagi kontekstowe do interpretacji w ramach schematu określonego przez inProfileID
i inEventType
. Tag pierwszego elementu zostanie zignorowany. System rejestrowania zdarzeń zastąpi go tagiem eventData.
Zdarzenie jest rejestrowane, gdy jego wartość inImportance przekracza próg logowania określony we właściwości LoggingConfiguration. Jeśli waga zdarzenia nie osiągnie obecnego progu, zostanie ono usunięte, a funkcja zwróci wynik 0
jako identyfikator zdarzenia.
Ten wariant wywołania niejawnie określa wszystkie domyślne opcje zdarzeń:
- zdarzenie jest oznaczone sygnaturą czasową z bieżącą godziną w momencie wywołania,
- jeśli zdarzenie jest oznaczone jako powiązane z urządzeniem, z którego nawiązuje połączenie,
- jest samodzielne i nie ma związku z innymi wydarzeniami,
- wydarzenie jest oznaczone jako mało pilne,
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwroty |
event_id_t Identyfikator zdarzenia, jeśli zdarzenie zostało zapisane w dzienniku. W przeciwnym razie ma wartość 0.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions )
Zarejestruj zdarzenie za pomocą wywołania zwrotnego z opcjami.
Funkcja rejestruje zdarzenie reprezentowane jako EventWriterFunct i kontekst appData
specyficzny dla aplikacji. Funkcja zapisuje metadane zdarzenia i wywołuje inEventWriter
z odwołaniem nl::Weave::TLV::TLVWriter i kontekstem inAppData
, dzięki czemu kod użytkownika może wysyłać dane zdarzenia bezpośrednio do dziennika zdarzeń. Ta forma logowania zdarzeń minimalizuje wykorzystanie pamięci, ponieważ dane zdarzeń są serializowane bezpośrednio w buforze docelowym. Dane zdarzenia MUSZĄ zawierać tagi kontekstowe do interpretacji w ramach schematu określonego przez inProfileID
i inEventType
. Tag pierwszego elementu zostanie zignorowany. System rejestrowania zdarzeń zastąpi go tagiem eventData.
Zdarzenie jest rejestrowane, gdy jego wartość inImportance przekracza próg logowania określony we właściwości LoggingConfiguration. Jeśli waga zdarzenia nie osiągnie obecnego progu, zostanie ono usunięte, a funkcja zwróci wynik 0
jako identyfikator zdarzenia.
Ten wariant wywołania pozwala wywołującemu ustawić dowolną kombinację wartości EventOptions
:
- sygnatura czasowa, gdy 0 przyjmuje domyślnie bieżącą godzinę w momencie połączenia,
- Sekcja „root” źródła zdarzenia (źródło zdarzenia i identyfikator cechy). Jeśli ma wartość NULL, domyślnie jest używane bieżące urządzenie. Zdarzenie jest oznaczone jako odnoszące się do urządzenia, które wykonuje wywołanie.
- identyfikator powiązanego zdarzenia na potrzeby grupowania identyfikatorów zdarzeń. Jeśli identyfikator powiązanego zdarzenia to 0, zdarzenie jest oznaczone jako niepowiązane z żadnymi innymi zdarzeniami.
- pilne; domyślnie niepilne.
Szczegóły | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||
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 wysyła dowolny ciąg znaków do domyślnego strumienia zdarzeń.
Ciąg będzie zawarty w strukturze zdarzenia debugowania tak samo jak inne zarejestrowane ciągi. Identyfikator profilu zdarzenia będzie identyfikatorem zdarzenia Nest Debug, a typem zdarzenia – kNestDebug_StringLogEntryEvent
.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
event_id_t Identyfikator zdarzenia, jeśli zdarzenie zostało zapisane w dzienniku. W przeciwnym razie ma wartość 0.
|
LookForElementWithTag
WEAVE_ERROR LookForElementWithTag( const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader )
PlainTextWriter
WEAVE_ERROR PlainTextWriter( TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
Funkcja pomocnicza do przesyłania dowolnego tekstu jako zdarzenia debugowania.
Zdarzenie debugowania to struktura z regionem logu i dowolnym tekstem.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
PlainTextWriter
WEAVE_ERROR PlainTextWriter( ::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
Funkcja pomocnicza do przesyłania dowolnego tekstu jako zdarzenia debugowania.
Zdarzenie debugowania to struktura z regionem logu i dowolnym tekstem.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|