nl::Weave::Profiles::DataManagement_Current

Bu ad alanı, şu anda üretim kullanımı için desteklenen Weave Data Management (WDM) profiline yönelik Weave'deki tüm arayüzleri içerir.

Özet

Numaralandırmalar

@100{
  kTag_Region = 1,
  kTag_Message = 2
}
enum
kNestDebug_StringLogEntryEvent için etiketler.
@101{
  kTag_Token = 1,
  kTag_Args = 2
}
enum
kNestDebug_TokenizedLogEntryEvent.
@102 enum
Kalıcı etkinlikler için etiketler.
@104 enum
WDM profil mesajı türleri.
@105 enum
WDM'ye özel durum kodları.
@147 enum
@95{
  kTag_CurrentImportance = 1,
  kTag_ImportanceExpiration,
  kTag_MinimumLogUploadInterval,
  kTag_MaximumLogUploadInterval,
  kTag_LoggingDestination,
  kTag_TraitLoggingImportance
}
enum
Günlük Kaydı Ayarları etiketleri.
@96{
  kTag_SupportedLogTransports = 1,
  kTag_SupportsStreaming = 2,
  kTag_SupportsNonVolatileStorage = 3,
  kTag_SupportsPerTraitVerbosity = 4,
  kTag_LoggingVolume = 5,
  kTag_LogBufferingCapacity = 6
}
enum
Günlük kaydı özellikleri için etiketler.
@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
Etkinlik meta verileri için etiketler.
@98 enum
Hata ayıklama özelliğinin profil tanımları.
@99{
  kNestDebug_StringLogEntryEvent = 1,
  kNestDebug_TokenizedLogEntryEvent = 2,
  kNestDebug_TokenizedHeaderEntryEvent = 3
}
enum
Nest Hata Ayıklama özelliği için etkinlik türleri.
CommandFlags{
  kCommandFlag_MustBeVersionValid = 0x0001,
  kCommandFlag_InitiationTimeValid = 0x0002,
  kCommandFlag_ActionTimeValid = 0x0004,
  kCommandFlag_ExpiryTimeValid = 0x0008,
  kCommandFlag_IsOneWay = 0x0010
}
enum
ImportanceType{
  ProductionCritical = 1,
  Production,
  Info,
  Debug
}
enum
Günlük girişinin önemi.
LoggingManagementStates{
  kLoggingManagementState_Idle = 1,
  kLoggingManagementState_InProgress = 2,
  kLoggingManagementState_Holdoff = 3,
  kLoggingManagementState_Shutdown = 4
}
enum
TimestampType enum
EventOptions öğesine eklenen zaman damgasının geçerliliği ve türü.

Typedef'ler

CommandFlags typedef
DataVersion typedef
uint64_t
EventProcessor typedef
void *
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData) typedef
Olay günlük kaydı alt sistemi için eventData öğesini sağlayan bir işlev.
FetchExternalEventsFunct)(EventLoadOutContext *aContext) typedef
Etkinlik verilerini getiren platform geri çağırmaları için bir işlev prototipi.
GenericTraitSinkCatalog typedef
GenericTraitSourceCatalog typedef
ImportanceType typedef
Günlük girişinin önemi.
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext) typedef
void(*
Özellik işleyici yineleyici.
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer) typedef
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID) typedef
void(*
Uzak aboneye harici etkinlikler iletildiğinde çağrılan bir geri çağırma için işlev prototipi.
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv) typedef
void(*
Harici etkinlikler arabelleklerden çıkarıldığında çağrılan bir geri çağırma için işlev prototipi.
PropertyDictionaryKey typedef
uint16_t
PropertyPathHandle typedef
uint32_t
PropertyPathHandle, bir özellik örneğinin köküne göre bir WDM yolunun 32 bit'lik benzersiz bir sayısal karmasıdır.
PropertySchemaHandle typedef
uint16_t
SchemaVersion typedef
uint16_t
SingleResourceSinkTraitCatalog typedef
SingleResourceSourceTraitCatalog typedef
TimestampType typedef
EventOptions öğesine eklenen zaman damgasının geçerliliği ve türü.
TraitDataHandle typedef
uint16_t
duration_t nl::Weave::Profiles::DataManagement_Current::duration_t
uint32_t
Milisaniye cinsinden süreyi açıklamak için kullanılan tür.
event_id_t nl::Weave::Profiles::DataManagement_Current::event_id_t
uint32_t
Etkinlik kimliğinin türü.
timestamp_t nl::Weave::Profiles::DataManagement_Current::timestamp_t
uint32_t
Zaman damgasını milisaniye cinsinden açıklamak için kullanılan tür.
utc_timestamp_t nl::Weave::Profiles::DataManagement_Current::utc_timestamp_t
uint64_t
UTC zaman damgasını milisaniye cinsinden açıklamak için kullanılan tür.

Değişkenler

sInstance
sLogFileName = "topazlog"[]
char

İşlevler

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)
Halihazırda serileştirilmiş bir eventdata öğesini etkinlik arabelleğine çeviren yardımcı işlev.
GetPropertyDictionaryKey(PropertyPathHandle aHandle)
PropertyDictionaryKey
GetPropertySchemaHandle(PropertyPathHandle aHandle)
PropertySchemaHandle
IsNullPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsRootPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsVersionNewer(const DataVersion & aVersion, const DataVersion & aReference)
bool
Bu, sürümleri karşılaştırmak için algoritmanın optimize edilmiş bir uygulamasıdır.
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
bool
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
TraitDataSink kataloğunda TraitUpdatableDataSink bulan yardımcı program işlevi.
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData)
Önceden seri numaralı formdan bir etkinliği günlüğe kaydedin.
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions)
Ek seçeneklerle birlikte, önceden seri haline getirilmiş bir formdan etkinlik kaydedin.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData)
Geri çağırma yoluyla bir etkinlik kaydedin.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
Seçenekleri de içeren bir geri arama aracılığıyla etkinlik kaydedin.
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
LogFreeform, varsayılan etkinlik akışına serbest biçimli bir dize yayar.
LookForElementWithTag(const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader)
PlainTextWriter(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
Hata ayıklama etkinliği olarak serbest biçimli metin yayınlamak için yardımcı işlev.
PlainTextWriter(::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
Hata ayıklama etkinliği olarak serbest biçimli metin yayınlamak için yardımcı işlev.
operator!=(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool
operator==(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool

Sınıflar

nl::Weave::Profiles::DataManagement_Current::AlwaysAcceptDataElementAccessControlDelegate
nl::Weave::Profiles::DataManagement_Current::BuilderBase

WDM mesaj kodlayıcılar için temel sınıf.

nl::Weave::Profiles::DataManagement_Current::CircularEventReader

CircularEventBuffer tarafından desteklenen bir TLVReader.

nl::Weave::Profiles::DataManagement_Current::Command
nl::Weave::Profiles::DataManagement_Current::CommandSender
nl::Weave::Profiles::DataManagement_Current::GenericTraitCatalogImpl

Bir Weave, tümü aynı kaynağa başvuran özellik verisi örnekleri koleksiyonu için TraitCatalogBase arayüzünün uygulamasını sağladı.

nl::Weave::Profiles::DataManagement_Current::IDataElementAccessControlDelegate

SendRequest'teki veri öğelerinin işleyicisi tarafından uygulanacak arayüz.

nl::Weave::Profiles::DataManagement_Current::IDirtyPathCut
nl::Weave::Profiles::DataManagement_Current::IPathFilter
nl::Weave::Profiles::DataManagement_Current::IWeavePublisherLock

Önemli WDM veri yapılarına erişimi serileştirmek için uygulama tarafından uygulanacak arayüz.

nl::Weave::Profiles::DataManagement_Current::IWeaveWDMMutex

Yoksayma nesnesinin arayüzü.

nl::Weave::Profiles::DataManagement_Current::ListBuilderBase

Veri Listeleri ve Sürüm Listeleri gibi TLV dizi öğelerinde uzmanlaşmış WDM mesaj kodlayıcıları için temel sınıf.

nl::Weave::Profiles::DataManagement_Current::ListParserBase

Veri Listeleri ve Sürüm Listeleri gibi TLV dizi öğelerinde uzmanlaşmış WDM mesaj ayrıştırıcılar için temel sınıf.

nl::Weave::Profiles::DataManagement_Current::LogBDXUpload
nl::Weave::Profiles::DataManagement_Current::LoggingConfiguration

LoggingConfiguration, Weave Event Logging alt sisteminin yapılandırılabilir bileşenini içerir.

nl::Weave::Profiles::DataManagement_Current::LoggingManagement

Bellek içi etkinlik günlüklerini yönetmek için bir sınıf.

nl::Weave::Profiles::DataManagement_Current::NotificationEngine
nl::Weave::Profiles::DataManagement_Current::ParserBase

WDM mesaj ayrıştırıcılar için temel sınıf.

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

Bir kaynağın kimliğini içeren yapı.

nl::Weave::Profiles::DataManagement_Current::SingleResourceTraitCatalog
nl::Weave::Profiles::DataManagement_Current::SubscriptionClient
nl::Weave::Profiles::DataManagement_Current::SubscriptionEngine

Bu, hem istemci hem de yayıncı tarafında tüm WDM Next aboneliklerini barındıran tek bir platformdur.

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

Şema motoru, belirli bir özellikle ilişkilendirilmiş şema bilgilerini alır ve bunları ayrıştırıp WDM makinesi tarafından kullanılabilecek bir forma dönüştürme olanağı sağlar.

nl::Weave::Profiles::DataManagement_Current::TraitUpdatableDataSink
nl::Weave::Profiles::DataManagement_Current::UpdateClient
nl::Weave::Profiles::DataManagement_Current::UpdateDictionaryDirtyPathCut

Sözlük alt öğesi olan özellik yolu işlenirken sözlüğün tekrar bekleme sırasına alınmasını sağlayan yardımcı program sınıfı.

nl::Weave::Profiles::DataManagement_Current::UpdateDirtyPathFilter

Bildirim işlenirken yolu filtrelemek için yardımcı program sınıfı.

nl::Weave::Profiles::DataManagement_Current::UpdateEncoder

Bu nesne, WDM UpdateRequest ve KısmiUpdateRequest yüklerini kodlar.

nl::Weave::Profiles::DataManagement_Current::ViewClient

Yapılar

nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer

nl::Weave::TLV::WeaveCircularTLVBuffer temelinde oluşturulan dahili etkinlik arabelleği.

nl::Weave::Profiles::DataManagement_Current::ConstSchemaVersionRange
nl::Weave::Profiles::DataManagement_Current::CopyAndAdjustDeltaTimeContext

Etkinlik listesi geçişi için dahili yapı.

nl::Weave::Profiles::DataManagement_Current::DebugLogContext
nl::Weave::Profiles::DataManagement_Current::DetailedRootSection

Özellik örneğinin tam çözünürlüğünü sağlayan yapı.

nl::Weave::Profiles::DataManagement_Current::EventEnvelopeContext

Geçiş etkinlikleri için dahili yapı.

nl::Weave::Profiles::DataManagement_Current::EventLoadOutContext

Çıkışta etkinlik listelerini kopyalama yapısı.

nl::Weave::Profiles::DataManagement_Current::EventOptions

Farklı etkinlik alanları için seçenekler sunan yapı.

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

Etkinlik meta verileri için bir şema tanımlayan yapı.

nl::Weave::Profiles::DataManagement_Current::ExternalEvents

Platformda depolanan etkinlikleri izleme yapısı.

nl::Weave::Profiles::DataManagement_Current::LogStorageResources

Günlük kaydı yönetimini başlatmada kullanılan bir yardımcı sınıf.

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

Birlikler

nl::Weave::Profiles::DataManagement_Current::Timestamp

Uygulama grubu sistemi veya UTC zaman damgası sağlayan birleştirme.

Ad alanları

nl::Weave::Profiles::DataManagement_Current::BaseMessageWithSubscribeId
nl::Weave::Profiles::DataManagement_Current::CustomCommand

WDM Özel Komut tanımı

nl::Weave::Profiles::DataManagement_Current::CustomCommandResponse

WDM Özel Komut Yanıtı tanımıdır.

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

WDM Veri Öğesi tanımı.

nl::Weave::Profiles::DataManagement_Current::DataList
nl::Weave::Profiles::DataManagement_Current::Event
nl::Weave::Profiles::DataManagement_Current::EventList
nl::Weave::Profiles::DataManagement_Current::NotificationRequest
nl::Weave::Profiles::DataManagement_Current::Path

WDM Yol tanımı.

nl::Weave::Profiles::DataManagement_Current::PathList

WDM Yol Listesi tanımı.

nl::Weave::Profiles::DataManagement_Current::Platform
nl::Weave::Profiles::DataManagement_Current::RejectionRecord
nl::Weave::Profiles::DataManagement_Current::RejectionRecordList
nl::Weave::Profiles::DataManagement_Current::StatusElement

WDM Durum Öğesi tanımı.

nl::Weave::Profiles::DataManagement_Current::StatusList
nl::Weave::Profiles::DataManagement_Current::SubscribeCancelRequest
nl::Weave::Profiles::DataManagement_Current::SubscribeConfirmRequest
nl::Weave::Profiles::DataManagement_Current::SubscribeRequest
nl::Weave::Profiles::DataManagement_Current::SubscribeResponse
nl::Weave::Profiles::DataManagement_Current::UpdateRequest

WDM Güncelleme İsteği tanımı.

nl::Weave::Profiles::DataManagement_Current::UpdateResponse
nl::Weave::Profiles::DataManagement_Current::VersionList
nl::Weave::Profiles::DataManagement_Current::ViewRequest
nl::Weave::Profiles::DataManagement_Current::ViewResponse

Numaralandırmalar

@100

 @100

kNestDebug_StringLogEntryEvent için etiketler.

Özellikler
kTag_Message

Asıl hata ayıklama mesajını içeren bir dize.

kTag_Region

Günlük bölgesini (ör. günlük mesajının ait olduğu modül) gösteren 32 bitlik imzalanmamış bir kod.

@101

 @101

kNestDebug_TokenizedLogEntryEvent.

Özellikler
kTag_Args

Jeton mesajıyla birlikte gönderilecek bir bağımsız değişken dizisi.

kTag_Token

Jetona karşılık gelen 32 bitlik imzalanmamış bir değer.

@102

 @102

Kalıcı etkinlikler için etiketler.

@104

 @104

WDM profil mesajı türleri.

Bu değerler, veri yönetimi spesifikasyonunda belirtilmektedir.

@105

 @105

WDM'ye özel durum kodları.

@147

 @147

@95

 @95

Günlük Kaydı Ayarları etiketleri.

Özellikler
kTag_CurrentImportance

Şu anki günlük kaydının önem derecesi. Değer, ImportanceType türündedir.

kTag_ImportanceExpiration

Mevcut yükseltilmiş günlük kaydı ayarlarının varsayılan değerlere geri döndüğü saat (UTC) (UTC).

kTag_LoggingDestination

Günlük yüklemenin hedefini belirten URL.

kTag_MaximumLogUploadInterval

Otomatik olarak tetiklenen günlük yükleme denemeleri arasındaki saniye cinsinden maksimum süre.

kTag_MinimumLogUploadInterval

Otomatik olarak tetiklenen günlük yükleme denemeleri arasındaki saniye cinsinden minimum süre.

kTag_TraitLoggingImportance

Seçilen profilleri daha yüksek günlük kaydı düzeylerine seçmeli olarak eşleyen isteğe bağlı bir dizi.

Dizideki her öğe, günlük kaydını sistemin bir alt kümesinden seçmeli olarak yükseltmek için bir form (profile,path,loggingimportance) alır. Yükseltilmiş profil günlük kaydı önceliği yalnızca günlük kaydı önceliği, mevcut Önem derecesini aştığında önem taşır ve currentÖnemle aynı geçerlilik bitiş tarihine tabiyse bu öncelik düzeyi daha yüksek olur.

@96

 @96

Günlük kaydı özellikleri için etiketler.

Özellikler
kTag_LogBufferingCapacity

Günlük arabelleğe alma kapasitesini kB cinsinden açıklayan 32 bitlik imzasız bir tam sayı.

kTag_LoggingVolume

Beklenen günlük kaydı hacmini kB/gün cinsinden açıklayan 32 bitlik imzasız bir tam sayı.

kTag_SupportedLogTransports

Desteklenen günlük aktarma mekanizmaları dizisi.

kTag_SupportsNonVolatileStorage

Cihazın kalıcı günlük depolamasını destekleyip desteklemediğini gösteren boole değeri.

kTag_SupportsPerTraitVerbosity

Cihazın özellik başına ayrıntı ayarlarını destekleyip desteklemediğini gösteren boole değeri.

kTag_SupportsStreaming

Cihazın akış günlüklerini destekleyip desteklemediğini gösteren boole değeri.

@97

 @97

Etkinlik meta verileri için etiketler.

Etiket değerlerinin tam anlamları için Etkinlik Tasarımı Spesifikasyonu'na bakın.

Özellikler
kTag_EventData

İsteğe bağlı. Etkinlik verilerinin kendisi. Boşsa varsayılan olarak boş bir yapı kullanılır.

kTag_EventDeltaSystemTime

WDM dahili etiketi, kodlamada önceki etkinlikten saat farkı.

kTag_EventDeltaUTCTime

WDM dahili etiketi, kodlamada önceki etkinlikten saat farkı.

kTag_EventID

64 bitlik imzasız miktar olarak ifade edilen etkinlik sıra numarası.

Sıralı olmalıdır ve dizideki atlamalar etkinlik boşluklarını gösterir.

kTag_EventImportance

Etkinliğin önemi.

kTag_EventResourceID

İsteğe bağlı.

Değer, etkinliğin ait olduğu kaynağın kimliğidir. Atlandığında, değer kTag_EventSource değeriyle aynı olur.

kTag_EventSource

Etkinliği oluşturan cihazın NodeID.

kTag_EventSystemTimestamp

İsteğe bağlı. Etkinliğin milisaniye cinsinden sistem Zaman damgası.

kTag_EventTraitInstanceID

İsteğe bağlı, etkinliği oluşturan özelliğin örneği.

kTag_EventTraitProfileID

Zorunludur. Özelliğin ProfileID'ye eşit olan 32 bitlik imzalanmamış tam sayı.

kTag_EventType

Zorunludur. Bu etkinlik türü için wdl.event.id değerine eşit olan 16 bitlik imzalanmamış tam sayı.

kTag_EventUTCTimestamp

İsteğe bağlı. Etkinliğin UTC zaman damgası (milisaniye cinsinden).

kTag_ExternalEventStructure

Harici etkinlikler için dahili etiket. Asla kablolu bağlantı üzerinden iletilmez, hiçbir zaman Weave kitaplığının dışında kullanılmamalıdır.

kTag_RelatedEventID

İsteğe bağlı.

Bu etkinliğin alakalı olduğu bir Etkinliğin kimliği. Atlanırsa, değer kTag_EventID değerine eşit olur.

kTag_RelatedEventImportance

İsteğe bağlı.

İlgili etkinliğin önemi. Atlanırsa değer, kTag_EventImportance değerine eşit olur.

@98

 @98

Hata ayıklama özelliğinin profil tanımları.

@99

 @99

Nest Hata Ayıklama özelliği için etkinlik türleri.

Özellikler
kNestDebug_StringLogEntryEvent

Serbest biçimli dize hata ayıklama mesajı etkinliği.

kNestDebug_TokenizedHeaderEntryEvent

Token atanmış başlık bilgilerini aktarmak için bir etkinlik.

kNestDebug_TokenizedLogEntryEvent

Token atanmış hata ayıklama mesajı için bir etkinlik.

CommandFlags

 CommandFlags
Özellikler
kCommandFlag_ActionTimeValid

İşlem zamanının geçerli olduğu zamanı ayarlayın.

kCommandFlag_ExpiryTimeValid

Geçerlilik bitiş zamanının geçerli olduğu zamanı ayarlayın.

kCommandFlag_InitiationTimeValid

Başlatma zamanının geçerli olduğu zamanı ayarlayın.

kCommandFlag_IsOneWay

Komut tek yönlü olduğunda ayarlayın.

kCommandFlag_MustBeVersionValid

Sürüm alanının geçerli olduğu zamanı ayarlayın.

ImportanceType

 ImportanceType

Günlük girişinin önemi.

Önem, etkinlikleri günlüğe gerçekten eklenmeden önce filtrelemenin bir yolu olarak kullanılır. Etkinlik günlüğe eklendikten sonra, etkinliği günlükten kalıcı olarak silmek için herhangi bir hazırlık yapılmaz. Önem düzeyi, etkinlik depolama alanına öncelik verilmesini sağlar. Yüksek önem düzeyine sahip bir olay tam arabelleğe eklenirse etkinlikler, önem sırasına (ve yaşa) göre çıkarılır. Bu nedenle, önem düzeyleri yalnızca göreli bir değere sahiptir. Bir sistem yalnızca tek bir önem düzeyi kullanıyorsa etkinlikler, halka tampon gibi yalnızca yaş sırasına göre çıkarılır.

Özellikler
Debug

Hata ayıklama önemi, sistemin geliştiricilerinin ilgilendiği günlük girişlerini ifade eder ve esas olarak geliştirme aşamasında kullanılır.

Hata ayıklama önem günlükleri, kısıtlamaya tabi cihazların bant genişliği veya güç bütçelerinde dikkate alınmaz; Bu nedenle, üretim sistemlerinde yalnızca sınırlı bir süre boyunca kullanılmalıdır.

Info

Bilginin önem derecesi, çalışan sistemle ilgili ek bilgiler ve teşhisler sağlayan günlük girişlerini ifade eder.

Bilgi günlük kaydı düzeyi, bir üretim sisteminde uzun süre veya saha denemesinde varsayılan günlük düzeyi olarak kullanılabilir. Kısıtlanmış cihazlarda Bilgi düzeyi ile kaydedilen girişler, bant genişliği ve bellek bütçesinde hesaba katılmalı, güç bütçesinde hesaba katılmamalıdır.

Production

Üretimin önemi, Nest ekosisteminin sürekli izlenmesi ve bakımında kullanılan günlük girişlerini ifade eder.

Kısıtlı cihazlarda, Üretim önem derecesi ile kaydedilen girişler güç ve bellek bütçesine dahil edilmelidir. Bu tür girişlerin her zaman günlüğe kaydedilmesi ve cihazdan kaldırılması beklenir.

ProductionCritical

Üretim kritik önem, kaybı müşteriye yönelik özellikleri doğrudan etkileyecek etkinlikleri ifade eder.

Uygulamalar, sistem hatasını belirtmek için Kritik Üretim olaylarının kaybını kullanabilir. Kısıtlı cihazlarda, Üretim Kritik önem derecesi ile günlüğe kaydedilen girişler, her zaman günlüğe kaydedilmesi ve cihazdan boşaltılması beklendiğinden güç ve bellek bütçesinde hesaba katılmalıdır.

LoggingManagementStates

 LoggingManagementStates
Özellikler
kLoggingManagementState_Holdoff

Günlük boşaltma tamamlandı; bekletme süresi sona erene kadar günlüğü yeniden başlatmayız.

kLoggingManagementState_Idle

Günlük boşaltma işlemi devam etmiyor, günlük aktarımı herhangi bir kısıtlama olmadan başlayabilir.

kLoggingManagementState_InProgress

Günlük boşaltma işlemi devam ediyor.

kLoggingManagementState_Shutdown

Herhangi bir günlük kaydı işlemi gerçekleştiremez.

TimestampType

 TimestampType

EventOptions öğesine eklenen zaman damgasının geçerliliği ve türü.

Typedef'ler

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)

Olay günlük kaydı alt sistemi için eventData öğesini sağlayan bir işlev.

Bu tür işlevlerin, etkinlik günlük kaydı alt sistemi için eventData öğesini sağlaması beklenir. Bu türdeki işlevler, etkinlik alt sistemi gerekli tüm etkinlik meta verilerini oluşturduktan sonra çağrılır. İşlev, kTag_EventData etiketli tek bir TLV öğesi yayımlayacağı bir nl::Weave::TLV::TLVWriter nesnesiyle çağrılır; söz konusu öğenin değerinin, etkinlik verilerini içeren bir yapı olması ZORUNLUDUR. Etkinlik verilerinin kendisi bağlam etiketleri kullanılarak yapılandırılmalıdır.

Ayrıntılar
Parametreler
[in,out] ioWriter
Etkinlik verilerinin serileştirilmesi için kullanılacak nl::Weave::TLV::TLVWriter nesnesine başvuru.
[in] inDataTag
Yazdığımız TLV için bir bağlam etiketi.
[in] appData
Uygulamaya özel bağlama işaret eden bir işaretçi.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.
other
Arayana, etkinlik verilerinin serileştirilmesinin tamamlanamadığını belirten uygun bir hata. ioWriter'a yapılan çağrılarda bulunan hatalar yeniden eşleme yapılmadan dağıtılmalıdır. İşlev herhangi bir hata döndürürse etkinlik oluşturma işlemi iptal edilir ve etkinlik günlüğe yazılmaz.
Ayrıca bkz:
PlainTextWriter
EventWriterTLVCopy

FetchExternalEventsFunct

WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)

Etkinlik verilerini getiren platform geri çağırmaları için bir işlev prototipi.

FetchEventsBefore'e benzer şekilde, bu getirme işlevi EventLoadOutContext.mLaunchEventID ile ExternalEvents.mLastEventID arasındaki tüm etkinlikleri döndürür.

Bağlam işaretçisi FetchExternalEventsContext türündedir. Buna, TLV biçimi için bazı yardımcı değişkenlerle birlikte EventLoadOutContext dahildir. Ayrıca, geri çağırmanın kaydedildiğinde oluşturulan ExternalEvents yapısına bir işaretçi de içerir. Bu, geri çağırma için etkinlik kimliği aralığını belirtir.

İşlevden geri dönüldüğünde, EventLoadOutContext.mCurrentEventID, TLV arabelleğine başarıyla yazılmamış ilk etkinlik kimliğini yansıtmalıdır. Platform, etkinlik başlığını ve verilerini TLV yazıcısına EventLogging protokolü tarafından belirtilen doğru biçimde yazmalıdır. Platformda etkinliklerin ve zaman damgalarının da benzersiz olması gerekir.

Tüm TLV hataları daha yüksek düzeylere yayılmalıdır. Örneğin, arabellekteki alanın dolması, gönderilen bir mesajı ve ardından, kalan etkinlik kimliği ile başka bir geri çağırma çağrısını tetikler.

Ayrıntılar
Değerleri Döndür
WEAVE_ERROR_NO_MEMORY
Etkinlik yazılacak alan yoksa.
WEAVE_ERROR_BUFFER_TOO_SMALL
Etkinlik yazılacak alan yoksa.
WEAVE_NO_ERROR
Başarıya merhaba.
WEAVE_END_OF_TLV
Başarıya merhaba.

GenericTraitSinkCatalog

GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog

GenericTraitSourceCatalog

GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog

ImportanceType

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

Günlük girişinin önemi.

Önem, etkinlikleri günlüğe gerçekten eklenmeden önce filtrelemenin bir yolu olarak kullanılır. Etkinlik günlüğe eklendikten sonra, etkinliği günlükten kalıcı olarak silmek için herhangi bir hazırlık yapılmaz. Önem düzeyi, etkinlik depolama alanına öncelik verilmesini sağlar. Yüksek önem düzeyine sahip bir olay tam arabelleğe eklenirse etkinlikler, önem sırasına (ve yaşa) göre çıkarılır. Bu nedenle, önem düzeyleri yalnızca göreli bir değere sahiptir. Bir sistem yalnızca tek bir önem düzeyi kullanıyorsa etkinlikler, halka tampon gibi yalnızca yaş sırasına göre çıkarılır.

IteratorCallback

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

Özellik işleyici yineleyici.

LoggingBufferHandler

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

NotifyExternalEventsDeliveredFunct

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

Uzak aboneye harici etkinlikler iletildiğinde çağrılan bir geri çağırma için işlev prototipi.

Harici etkinlikler bir uzak aboneye iletildiğinde motor, harici etkinlik sağlayıcısına bir bildirim sağlar. Geri çağırma, yayınlanan son kimliğin etkinliğini ve etkinliği alan abonenin kimliğini içerir.

Ayrıntılar
Parametreler
[in] inEv
Teslim edilen etkinliklere karşılık gelen harici etkinlik nesnesi
[in] inLastDeliveredEventID
Aboneye teslim edilen son etkinliğin kimliği.
[in] inRecipientNodeID
Alıcının örgü düğüm kimliği

NotifyExternalEventsEvictedFunct

void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)

Harici etkinlikler arabelleklerden çıkarıldığında çağrılan bir geri çağırma için işlev prototipi.

Harici etkinlik nesnesi, giden ileti arabelleğinden çıkarıldığında motor, harici etkinlik sağlayıcısına bir bildirim sağlar. Geri çağırma, çıkarılacak harici etkinliği içerir.

Ayrıntılar
Parametreler
[in] inEv
Çıkarılacak harici etkinlik nesnesi

PropertyDictionaryKey

uint16_t PropertyDictionaryKey

PropertyPathHandle

uint32_t PropertyPathHandle

PropertyPathHandle, bir özellik örneğinin köküne göre bir WDM yolunun 32 bit'lik benzersiz bir sayısal karmasıdır.

İki bölümden oluşur:

  • Şemanın statik bölümüyle eşleşen 16 bitten küçük bir sayı.
  • Alttaki 16 bitler sözlük öğesi içindeki bir yolu ifade ettiğinde, söz konusu öğeyle ilişkili sözlük anahtarını temsil eden 16 bitlik üst bir sayı bulunur. Alttaki 16 bitler sözlük dışı bir öğeye işaret ediyorsa üst 16 bit 0 olmalıdır.

Bazı özellikleri:

  • Her özelliğin kendi özellik yolu tutma alanı vardır.
  • Her benzersiz WDM alt yolu yolunun benzer şekilde benzersiz bir PropertyPathHandle'ı olacaktır.
  • PropertyPathHandle'lar, IDL'den bir özellik derleyici tarafından otomatik olarak oluşturulur (şimdilik elle yapılır) ve ilgili özelliğin başlık dosyasında numaralandırıcı listesi olarak temsil edilir.
  • Bu yapıyla, uygulama mantığının WDM yollarıyla doğrudan ilgilenmesi gerekmez. Daha ziyade, WDM ile olan etkileşimleri yalnızca bu herkese açık kullanıcı adları üzerinden yürütülür.
  • Yol tutma yerleri için belirli anlamları olan iki ayrılmış değer vardır:
    • 0, "NULL" değerini gösterir herkese açık kullanıcı adı
    • 1, özellik örneğinin köküne işaret eden bir tutma yerini belirtir.

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

EventOptions öğesine eklenen zaman damgasının geçerliliği ve türü.

TraitDataHandle

uint16_t TraitDataHandle

duration_t

uint32_t duration_t

Milisaniye cinsinden süreyi açıklamak için kullanılan tür.

event_id_t

uint32_t event_id_t

Etkinlik kimliğinin türü.

timestamp_t

uint32_t timestamp_t

Zaman damgasını milisaniye cinsinden açıklamak için kullanılan tür.

utc_timestamp_t

uint64_t utc_timestamp_t

UTC zaman damgasını milisaniye cinsinden açıklamak için kullanılan tür.

Değişkenler

sInstance

LoggingManagement sInstance

sLogFileName

char sLogFileName[] = "topazlog"

İşlevler

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
)

Halihazırda serileştirilmiş bir eventdata öğesini etkinlik arabelleğine çeviren yardımcı işlev.

Ayrıntılar
Parametreler
[in,out] ioWriter
Etkinliği yazarken kullanılacak yazar
[in] inDataTag
Kopyaladığımız TLV için bir bağlam etiketi. Burada kullanılmaz, ancak EventWriterFunct için typedef tarafından zorunlu kılınır.
[in] appData
Serileştirilmiş etkinlik verilerini tutan TLVReader'a yönlendiren bir işaret.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.
other
ioWriter'dan döndürülecek diğer hatalar.

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
)

Bu, sürümleri karşılaştırmak için algoritmanın optimize edilmiş bir uygulamasıdır.

İstemci tarafında, hizmetten alınan sürüm her zaman en yeni sürümdür.

IsVersionNewerOrEqual

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

Yerini bul

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

TraitDataSink kataloğunda TraitUpdatableDataSink bulan yardımcı program işlevi.

Ayrıntılar
Parametreler
[in] aTraitDataHandle
Aramak için lavabonun tutma yeri.
[in] aDataSinkCatalog
Arama yapılacak katalog.
İadeler
Bir TraitUpdatableDataSink işaretçisi; Herkese açık kullanıcı adı yoksa veya güncellenemeyen bir TraitDataSink'e işaret ediyorsa NULL değerini alır.

LogEvent

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

Önceden seri numaralı formdan bir etkinliği günlüğe kaydedin.

İşlev, nl::Weave::TLV::TLVReader olarak temsil edilen bir etkinliği günlüğe kaydeder. Bu, etkinlik verileri temsilinin nl::Weave::TLV::TLVReader'ın altındaki depolama alanında zaten serileştirildiği anlamına gelir. nl::Weave::TLV::TLVReader öğesinin en az tek bir veri öğesi içermesi beklenir. Bu öğe bir yapı olmalıdır. Okuyucudan çıkan ilk öğe, etkinlik verisi olarak değerlendirilir ve etkinlik günlüğünde depolanır. Etkinlik verilerinin inProfileID ve inEventType tarafından tanımlanan şema içinde yorumlanacak içerik etiketleri içermesi ZORUNLUDUR. İlk öğenin etiketi yok sayılır; etkinlik günlük kaydı sistemi bunu eventData etiketiyle değiştirir.

Etkinlik, inImportance özelliği LoggingConfiguration'da belirtilen günlük kaydı eşiğini aşarsa günlüğe kaydedilir. Etkinliğin önemi, geçerli eşiği karşılamıyorsa etkinlik çıkarılır ve işlev, sonuç olarak elde edilen etkinlik kimliği olarak bir 0 döndürür.

Çağrının bu varyantı, tüm varsayılan etkinlik seçeneklerini dolaylı olarak belirtir:

  • çağrının yapıldığı andaki saate ekleyerek etkinliğe
  • Etkinlik, aramayı yapan cihazla alakalı olarak işaretlenirse
  • başka hiçbir etkinlikle ilgisi olmayan bağımsız bir etkinliktir.
  • etkinlik acil değil olarak işaretlendiyse

Ayrıntılar
Parametreler
[in] inSchema
Bu etkinliğin önemini, profil kimliğini ve yapı türünü tanımlayan şema.
[in] inData
İlk öğe olarak etkinlik verilerini içeren TLV okuyucu.
İadeler
event_id_t Etkinlik günlüğe yazıldıysa etkinlik kimliği; aksi halde 0 değerini alır.

LogEvent

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

Ek seçeneklerle birlikte, önceden seri haline getirilmiş bir formdan etkinlik kaydedin.

İşlev, nl::Weave::TLV::TLVReader olarak temsil edilen bir etkinliği günlüğe kaydeder. Bu, etkinlik verileri temsilinin nl::Weave::TLV::TLVReader'ın altındaki depolama alanında zaten serileştirildiği anlamına gelir. nl::Weave::TLV::TLVReader öğesinin en az tek bir veri öğesi içermesi beklenir. Bu öğe bir yapı olmalıdır. Okuyucudan çıkan ilk öğe, etkinlik verisi olarak değerlendirilir ve etkinlik günlüğünde depolanır. Etkinlik verilerinin inProfileID ve inEventType tarafından tanımlanan şema içinde yorumlanacak içerik etiketleri içermesi ZORUNLUDUR. İlk öğenin etiketi yok sayılır; etkinlik günlük kaydı sistemi bunu eventData etiketiyle değiştirir.

Etkinlik, inImportance özelliği LoggingConfiguration'da belirtilen günlük kaydı eşiğini aşarsa günlüğe kaydedilir. Etkinliğin önemi, geçerli eşiği karşılamıyorsa etkinlik çıkarılır ve işlev, sonuç olarak elde edilen etkinlik kimliği olarak bir 0 döndürür.

Çağrının bu varyantı, arayanın herhangi bir EventOptions kombinasyonunu ayarlamasına izin verir:

  • 0 varsayılan olarak çağrı noktasında geçerli saate ayarlandığında zaman damgası
  • "kök" etkinlik kaynağının bölümü (etkinlik kaynağı ve özellik kimliği); NULL ise varsayılan olarak mevcut cihaz olur. Etkinlik, aramayı yapan cihazla alakalı olarak işaretlenirse
  • Etkinlik kimliklerini gruplandırmak için ilgili bir etkinlik kimliği; İlgili etkinlik kimliği 0 olduğunda, etkinlik başka bir etkinlikle alakalı değil olarak işaretlenir.
  • aciliyet; varsayılan olarak acil değildir.

Ayrıntılar
Parametreler
[in] inSchema
Bu etkinliğin önemini, profil kimliğini ve yapı türünü tanımlayan şema.
[in] inData
İlk öğe olarak etkinlik verilerini içeren TLV okuyucu. NULL olmamalıdır
[in] inOptions
Etkinlik meta verileriyle ilgili seçenekler. NULL olabilir.
İadeler
event_id_t Etkinlik günlüğe yazıldıysa etkinlik kimliği; aksi halde 0 değerini alır.

LogEvent

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

Geri çağırma yoluyla bir etkinlik kaydedin.

İşlev, EventWriterFunct ve uygulamaya özel appData bağlamı olarak temsil edilen bir etkinliği günlüğe kaydeder. Kullanıcı kodunun etkinlik verilerini doğrudan etkinlik günlüğüne yayınlayabilmesi için işlev, etkinlik meta verilerini yazar ve inEventWriter öğesini bir nl::Weave::TLV::TLVWriter referansı ve inAppData bağlamıyla çağırır. Bu etkinlik günlük kaydı biçimi, etkinlik verileri doğrudan hedef arabelleğe alındığından bellek tüketimini en aza indirir. Etkinlik verilerinin, inProfileID ve inEventType tarafından tanımlanan şema içinde yorumlanacak içerik etiketleri İÇERMELİDİR. İlk öğenin etiketi yok sayılır; etkinlik günlük kaydı sistemi bunu eventData etiketiyle değiştirir.

Etkinlik, inImportance özelliği LoggingConfiguration'da belirtilen günlük kaydı eşiğini aşarsa günlüğe kaydedilir. Etkinliğin önemi, geçerli eşiği karşılamıyorsa etkinlik çıkarılır ve işlev, sonuç olarak elde edilen etkinlik kimliği olarak bir 0 döndürür.

Çağrının bu varyantı, tüm varsayılan etkinlik seçeneklerini dolaylı olarak belirtir:

  • çağrının yapıldığı andaki saate ekleyerek etkinliğe
  • Etkinlik, aramayı yapan cihazla alakalı olarak işaretlenirse
  • başka hiçbir etkinlikle ilgisi olmayan bağımsız bir etkinliktir.
  • etkinlik acil değil olarak işaretlendiyse

Ayrıntılar
Parametreler
[in] inSchema
Bu etkinliğin önemini, profil kimliğini ve yapı türünü tanımlayan şema.
[in] inEventWriter
Etkinlik verilerini gerçekten serileştirmek için çağrılacak geri çağırma
[in] inAppData
Geri çağırma için uygulama bağlamı.
İadeler
event_id_t Etkinlik günlüğe yazıldıysa etkinlik kimliği; aksi halde 0 değerini alır.

LogEvent

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

Seçenekleri de içeren bir geri arama aracılığıyla etkinlik kaydedin.

İşlev, EventWriterFunct ve uygulamaya özel appData bağlamı olarak temsil edilen bir etkinliği günlüğe kaydeder. Kullanıcı kodunun etkinlik verilerini doğrudan etkinlik günlüğüne yayınlayabilmesi için işlev, etkinlik meta verilerini yazar ve inEventWriter öğesini bir nl::Weave::TLV::TLVWriter referansı ve inAppData bağlamıyla çağırır. Bu etkinlik günlük kaydı biçimi, etkinlik verileri doğrudan hedef arabelleğe alındığından bellek tüketimini en aza indirir. Etkinlik verilerinin, inProfileID ve inEventType tarafından tanımlanan şema içinde yorumlanacak içerik etiketleri İÇERMELİDİR. İlk öğenin etiketi yok sayılır; etkinlik günlük kaydı sistemi bunu eventData etiketiyle değiştirir.

Etkinlik, inImportance özelliği LoggingConfiguration'da belirtilen günlük kaydı eşiğini aşarsa günlüğe kaydedilir. Etkinliğin önemi, geçerli eşiği karşılamıyorsa etkinlik çıkarılır ve işlev, sonuç olarak elde edilen etkinlik kimliği olarak bir 0 döndürür.

Çağrının bu varyantı, arayanın herhangi bir EventOptions kombinasyonunu ayarlamasına izin verir:

  • 0 varsayılan olarak çağrı noktasında geçerli saate ayarlandığında zaman damgası
  • "kök" etkinlik kaynağının bölümü (etkinlik kaynağı ve özellik kimliği); NULL ise varsayılan olarak mevcut cihaz olur. Etkinlik, aramayı yapan cihazla alakalı olarak işaretlenirse
  • Etkinlik kimliklerini gruplandırmak için ilgili bir etkinlik kimliği; İlgili etkinlik kimliği 0 olduğunda, etkinlik başka bir etkinlikle alakalı değil olarak işaretlenir.
  • aciliyet; varsayılan olarak acil değildir.

Ayrıntılar
Parametreler
[in] inSchema
Bu etkinliğin önemini, profil kimliğini ve yapı türünü tanımlayan şema.
[in] inEventWriter
Etkinlik verilerini gerçekten serileştirmek için çağrılacak geri çağırma
[in] inAppData
Geri çağırma için uygulama bağlamı.
[in] inOptions
Etkinlik meta verileriyle ilgili seçenekler. NULL olabilir.
İadeler
event_id_t Etkinlik günlüğe yazıldıysa etkinlik kimliği; aksi halde 0 değerini alır.

LogFreeform

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

LogFreeform, varsayılan etkinlik akışına serbest biçimli bir dize yayar.

Dize, günlüğe kaydedilen diğer dizelerle yapısal olarak aynı olacak şekilde bir hata ayıklama etkinlik yapısına dahil edilir. Etkinlik profili kimliği bir Nest Debug etkinliğine ait, etkinlik türü ise kNestDebug_StringLogEntryEvent olur.

Ayrıntılar
Parametreler
[in] inImportance
Günlük girişinin önemi; Önem düzeyi mevcut önemin altında kalırsa etkinlik, gerçekte günlüğe kaydedilmez
[in] inFormat
printf uyumlu biçim dizesi ve ardından, biçimlendirilecek bağımsız değişkenler
İadeler
event_id_t Etkinlik günlüğe yazıldıysa etkinlik kimliği; aksi halde 0 değerini alır.

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
)

Hata ayıklama etkinliği olarak serbest biçimli metin yayınlamak için yardımcı işlev.

Hata ayıklama etkinliği, logregion ve serbest biçimli metin içeren bir yapıdır.

Ayrıntılar
Parametreler
[in,out] ioWriter
Etkinliği yazarken kullanılacak yazar
[in] appData
Dize biçimini, bağımsız değişkenleri ve günlük bölgesini içeren DebugLogContext yapısının işaretçisi
[in] inDataTag
Yazdığımız TLV için bir bağlam etiketi. Burada kullanılmaz, ancak EventWriterFunct için typedef tarafından zorunlu kılınır.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.
other
ioWriter'dan döndürülecek diğer hatalar.

PlainTextWriter

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

Hata ayıklama etkinliği olarak serbest biçimli metin yayınlamak için yardımcı işlev.

Hata ayıklama etkinliği, logregion ve serbest biçimli metin içeren bir yapıdır.

Ayrıntılar
Parametreler
[in,out] ioWriter
Etkinliği yazarken kullanılacak yazar
[in] inDataTag
Yayınlanacak etiket
[in] appData
Dize biçimini, bağımsız değişkenleri ve günlük bölgesini içeren DebugLogContext yapısının işaretçisi
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.
other
ioWriter'dan döndürülebilecek diğer hatalar.

operator!=

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

operatör==

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