nl::Weave::Profiles::DataManagement_Current

מרחב השמות הזה כולל את כל הממשקים ב-Weave עבור פרופיל Weave Data Management (WDM) הנתמכים כרגע לשימוש בייצור.

סיכום

ספירות

@100{
  kTag_Region = 1,
  kTag_Message = 2
}
טיפוסים בני מנייה (enum)
תגים של kNestDebug_StringLogEntryEvent.
@101{
  kTag_Token = 1,
  kTag_Args = 2
}
טיפוסים בני מנייה (enum)
תגים של kNestDebug_TokenizedLogEntryEvent.
@102 טיפוסים בני מנייה (enum)
תגים לאירועים קבועים.
@104 טיפוסים בני מנייה (enum)
הסוגים של הודעות פרופיל WDM.
@105 טיפוסים בני מנייה (enum)
קודי מצב ספציפיים ל-WDM.
@147 טיפוסים בני מנייה (enum)
@95{
  kTag_CurrentImportance = 1,
  kTag_ImportanceExpiration,
  kTag_MinimumLogUploadInterval,
  kTag_MaximumLogUploadInterval,
  kTag_LoggingDestination,
  kTag_TraitLoggingImportance
}
טיפוסים בני מנייה (enum)
תגי הגדרות של Logging.
@96{
  kTag_SupportedLogTransports = 1,
  kTag_SupportsStreaming = 2,
  kTag_SupportsNonVolatileStorage = 3,
  kTag_SupportsPerTraitVerbosity = 4,
  kTag_LoggingVolume = 5,
  kTag_LogBufferingCapacity = 6
}
טיפוסים בני מנייה (enum)
תגים ליכולות רישום ביומן.
@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)
תגים למטא-נתונים של אירועים.
@98 טיפוסים בני מנייה (enum)
הגדרות פרופיל של תכונת ניפוי הבאגים.
@99{
  kNestDebug_StringLogEntryEvent = 1,
  kNestDebug_TokenizedLogEntryEvent = 2,
  kNestDebug_TokenizedHeaderEntryEvent = 3
}
טיפוסים בני מנייה (enum)
סוגי אירועים למאפיין Nest Debug.
CommandFlags{
  kCommandFlag_MustBeVersionValid = 0x0001,
  kCommandFlag_InitiationTimeValid = 0x0002,
  kCommandFlag_ActionTimeValid = 0x0004,
  kCommandFlag_ExpiryTimeValid = 0x0008,
  kCommandFlag_IsOneWay = 0x0010
}
טיפוסים בני מנייה (enum)
ImportanceType{
  ProductionCritical = 1,
  Production,
  Info,
  Debug
}
טיפוסים בני מנייה (enum)
החשיבות של הרשומה ביומן.
LoggingManagementStates{
  kLoggingManagementState_Idle = 1,
  kLoggingManagementState_InProgress = 2,
  kLoggingManagementState_Holdoff = 3,
  kLoggingManagementState_Shutdown = 4
}
טיפוסים בני מנייה (enum)
TimestampType טיפוסים בני מנייה (enum)
התקינות והסוג של חותמת הזמן שכלולים ב-EventOptions.

ערכי דף

CommandFlags typedef
DataVersion typedef
uint64_t
EventProcessor typedef
void *
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData) typedef
פונקציה שמספקת את הרכיב eventData עבור מערכת המשנה של רישום האירועים.
FetchExternalEventsFunct)(EventLoadOutContext *aContext) typedef
אב-טיפוס של פונקציה לקריאות חוזרות (callbacks) של פלטפורמה שאחזרת נתוני אירועים.
GenericTraitSinkCatalog typedef
GenericTraitSourceCatalog typedef
ImportanceType typedef
החשיבות של הרשומה ביומן.
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext) typedef
void(*
איטרטור של 'כינוי תכונה'.
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer) typedef
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID) typedef
void(*
אב-טיפוס של פונקציה לקריאה חוזרת (callback) שמופעל כשנשלחים אירועים חיצוניים למנוי המרוחק.
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv) typedef
void(*
אב-טיפוס של פונקציה לקריאה חוזרת (callback) מופעל כשאירועים חיצוניים יוצאים ממאגרי האחסון.
PropertyDictionaryKey typedef
uint16_t
PropertyPathHandle typedef
uint32_t
PropertyPathHandle הוא גיבוב מספרי ייחודי של 32 ביט של נתיב WDM ביחס לשורש של מופע trait.
PropertySchemaHandle typedef
uint16_t
SchemaVersion typedef
uint16_t
SingleResourceSinkTraitCatalog typedef
SingleResourceSourceTraitCatalog typedef
TimestampType typedef
התקינות והסוג של חותמת הזמן שכלולים ב-EventOptions.
TraitDataHandle typedef
uint16_t
duration_t nl::Weave::Profiles::DataManagement_Current::duration_t
uint32_t
סוג המשמש לתיאור משך הזמן, באלפיות השנייה.
event_id_t nl::Weave::Profiles::DataManagement_Current::event_id_t
uint32_t
הסוג של מזהה האירוע.
timestamp_t nl::Weave::Profiles::DataManagement_Current::timestamp_t
uint32_t
סוג המשמש לתיאור חותמת הזמן באלפיות השנייה.
utc_timestamp_t nl::Weave::Profiles::DataManagement_Current::utc_timestamp_t
uint64_t
הסוג שמשמש לתיאור חותמת הזמן של שעון UTC באלפיות השנייה.

משתנים

sInstance
sLogFileName = "topazlog"[]
char

פונקציות

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)
פונקציית עזר שמתרגמת רכיב eventdata שכבר הוגדר בהמשכים למאגר הנתונים הזמני.
GetPropertyDictionaryKey(PropertyPathHandle aHandle)
PropertyDictionaryKey
GetPropertySchemaHandle(PropertyPathHandle aHandle)
PropertySchemaHandle
IsNullPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsRootPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsVersionNewer(const DataVersion & aVersion, const DataVersion & aReference)
bool
זהו הטמעה אופטימלית של האלגוריתם להשוואה בין גרסאות.
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
bool
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
פונקציית כלי עזר שמחפשת TraitUpdatableDataSink בקטלוג של TraitDataSink.
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData)
רישום אירוע ביומן מטופס שעבר תהליך סריאליזציה.
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions)
רישום אירוע ביומן מטופס שעבר תהליך סריאליזציה, עם אפשרויות נוספות.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData)
רישום אירוע ביומן באמצעות קריאה חוזרת (callback).
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
רישום אירוע באמצעות קריאה חוזרת (callback), עם אפשרויות.
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
LogFreeform מפיק מחרוזת חופשית לזרם האירועים שמוגדר כברירת מחדל.
LookForElementWithTag(const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader)
PlainTextWriter(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
פונקציית עזר שמפיקה טקסט חופשי כאירוע של ניפוי באגים.
PlainTextWriter(::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
פונקציית עזר שמפיקה טקסט חופשי כאירוע של ניפוי באגים.
operator!=(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool
operator==(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool

מחלקות

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

מחלקה בסיסית למקודדי הודעות WDM.

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

קובץ TLVReader שמגובה על ידי CircularEventBuffer.

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

Weave סיפקה הטמעה של הממשק TraitCatalogBase עבור אוסף מופעים של נתוני trait שכל אחד מהם מתייחס לאותו משאב.

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

ממשק שיוטמע על ידי מעבד מידע של רכיבי נתונים ב-NotificationRequest.

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

ממשק שצריך להטמיע על ידי האפליקציה כדי ליצור סדרה של גישה למבני נתונים של מפתחות WDM.

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

ממשק של אובייקט mutex.

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

מחלקה בסיסית עבור מקודדי הודעות של WDM שמתמחה ברכיבי מערך TLV, כמו 'רשימות נתונים' ו'רשימות גרסאות'.

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

מחלקת בסיס לנתחי הודעות של WDM, המתמחים ברכיבי מערך TLV, כמו 'רשימות נתונים' ורשימות של גרסאות.

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

LoggingConfiguration כולל את הרכיב שניתן להגדרה של מערכת המשנה Logging לאירועים ב-Weave.

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

מחלקה לניהול יומני האירועים בזיכרון.

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

מחלקה בסיסית למנתחי הודעות WDM.

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

מבנה שכולל את מזהה משאב.

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

מדובר ב-Singleton שמארח את כל המינויים ל-WDM Next, הן מצד הלקוח והן מצד בעלי האתרים.

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

מנוע הסכימה לוקח מידע על סכימה המשויכת לתכונה מסוימת, ומספק מתקנים לניתוח ולתרגום של נתונים לצורה שניתן להשתמש בה על ידי מכונות ה-WDM.

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

מחלקת השירות כדי להחזיר את המילון לתור בהמתנה כשעיבוד נתיב המאפיין שיש בו צאצא של מילון.

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

סיווג השירות לסינון נתיב בזמן טיפול בהתראה.

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

אובייקט זה מקודד מטענים ייעודיים (payloads) של WDM UpdateRequest ו-PartialUpdateRequest.

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

מבנים

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

מאגר אירועים פנימי שנוצר סביב nl::Weave::TLV::WeaveCircularTLVBuffer.

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

מבנה פנימי לחלוקה של רשימת אירועים.

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

המבנה שמספק רזולוציה מלאה של מופע ה-trait.

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

מבנה פנימי לאירועי מעבר.

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

המבנה להעתקת רשימות אירועים בפלט.

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

המבנה שמספק אפשרויות לשדות השונים של האירועים.

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

המבנה שמגדיר סכימה למטא-נתונים של אירועים.

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

מבנה למעקב אחר אירועים המאוחסנים בפלטפורמה.

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

כיתת עזר להפעלת ניהול הרישום ביומן.

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

התאגדויות

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

איחוד שמספק מערכת קבוצת אפליקציות או חותמת זמן לפי שעון UTC.

מרחבי שמות

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

הגדרת Command מותאמת אישית של WDM.

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

הגדרת תגובה של Command בהתאמה אישית של WDM.

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

הגדרת רכיב נתונים של WDM.

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.

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

הגדרת רשימת נתיבים של WDM.

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.

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'.

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

ספירות

100@

 @100

תגים של kNestDebug_StringLogEntryEvent.

תכונות
kTag_Message

מחרוזת שמכילה את ההודעה על תוצאות ניפוי הבאגים בפועל.

kTag_Region

חתימה לא חתומה של 32 סיביות המציינת את אזור היומן, כלומר המודול שאליו מתייחסת הודעת היומן.

101@

 @101

תגים של kNestDebug_TokenizedLogEntryEvent.

תכונות
kTag_Args

מערך של ארגומנטים לשליחה יחד עם הודעת האסימון.

kTag_Token

ערך לא חתום של 32 ביט שתואם לאסימון.

@102

 @102

תגים לאירועים קבועים.

@104

 @104

הסוגים של הודעות פרופיל WDM.

הערכים האלה מוצגים במפרט ניהול הנתונים.

@105

 @105

קודי מצב ספציפיים ל-WDM.

@147

 @147

@95

 @95

תגי הגדרות של Logging.

תכונות
kTag_CurrentImportance

חשיבות הרישום הנוכחית ביומן, הערך הוא מסוג ImportanceType.

kTag_ImportanceExpiration

השעה, לפי שעון UTC, בשניות, כאשר ההגדרות הנוכחיות של הרישום ביומן המוגבה חוזרות לערכי ברירת המחדל.

kTag_LoggingDestination

כתובת URL שמציינת את היעד של העלאת היומן.

kTag_MaximumLogUploadInterval

משך זמן מקסימלי, בשניות, בין ניסיונות העלאת היומן שהופעלו אוטומטית.

kTag_MinimumLogUploadInterval

משך זמן מינימלי, בשניות, בין ניסיונות העלאת היומן שהופעלו אוטומטית.

kTag_TraitLoggingImportance

מערך אופציונלי שממפה באופן סלקטיבי את הפרופילים שנבחרו לרמות הרישום הגבוהות יותר ביומן.

כל רכיב במערך מקבל צורה (profile,path,loggingimportance) כדי להעלות את הרישום ביומן באופן סלקטיבי מקבוצת משנה של המערכת. העדיפות הגבוהה של הרישום ביומן של הפרופיל היא בעלת חשיבות רק אם עדיפות הרישום ביומן גבוהה מהחשיבות הנוכחית והיא כפופה לזמן התפוגה הזהה לחשיבות הנוכחית.

@96

 @96

תגים ליכולות רישום ביומן.

תכונות
kTag_LogBufferingCapacity

מספר שלם לא חתום של 32 סיביות שמתאר את קיבולת האחסון הזמני של היומן ב-kB.

kTag_LoggingVolume

מספר שלם לא חתום של 32 ביט שמתאר את נפח הרישום הצפוי ב-kB ליום.

kTag_SupportedLogTransports

מערך של מנגנונים נתמכים להעברת יומנים.

kTag_SupportsNonVolatileStorage

ערך בוליאני שמציין אם המכשיר תומך באחסון יומן לא תנודתי.

kTag_SupportsPerTraitVerbosity

ערך בוליאני שמציין אם המכשיר תומך בהגדרות דרגת מלל לפי תכונה.

kTag_SupportsStreaming

ערך בוליאני שמציין אם המכשיר תומך בסטרימינג ביומנים.

@97

 @97

תגים למטא-נתונים של אירועים.

לסמנטיקה מלאה של ערכי התגים יש לעיין במפרט עיצוב האירועים.

תכונות
kTag_EventData

אפשרות. נתוני האירוע עצמם. אם השדה ריק, ברירת המחדל שלו היא מבנה ריק.

kTag_EventDeltaSystemTime

תג פנימי של WDM, הפרש הזמן מהאירוע הקודם בקידוד.

kTag_EventDeltaUTCTime

תג פנימי של WDM, הפרש הזמן מהאירוע הקודם בקידוד.

kTag_EventID

מספר רצף של אירוע, מבוטא ככמות לא חתומה של 64 ביט.

חייב להיות רציף, הקפיצות ברצף מציינות פערי אירועים.

kTag_EventImportance

החשיבות של האירוע.

kTag_EventResourceID

אפשרות.

הערך הוא המזהה של המשאב שאליו האירוע קשור. אם לא תזינו את הערך, הערך יהיה זהה לערך של הפרמטר kTag_EventSource.

kTag_EventSource

ה-NodeID של המכשיר שיצר את האירוע.

kTag_EventSystemTimestamp

אפשרות. חותמת הזמן של האירוע במערכת באלפיות השנייה.

kTag_EventTraitInstanceID

אופציונלי, המופע של התכונה שיצר את האירוע.

kTag_EventTraitProfileID

חובה. מספר שלם לא חתום ב-32 ביט שווה ל-ProfileID של התכונה.

kTag_EventType

חובה. מספר שלם ללא סימן 16 סיביות ששווה ל-wdl.event.id עבור סוג האירוע הזה.

kTag_EventUTCTimestamp

אפשרות. חותמת הזמן של האירוע לפי שעון UTC, באלפיות השנייה.

kTag_ExternalEventStructure

תג פנימי לאירועים חיצוניים. לעולם לא יועברו על פני הכבלים, ולעולם אין להשתמש בהם מחוץ לספריית Weave.

kTag_RelatedEventID

אפשרות.

מזהה של אירוע שהאירוע הזה קשור אליו. אם לא צוין מזהה, הערך שווה לערך של kTag_EventID.

kTag_RelatedEventImportance

אפשרות.

החשיבות של האירוע הקשור. אם לא צוין, הערך שווה לערך של kTag_EventImportance.

@98

 @98

הגדרות פרופיל של תכונת ניפוי הבאגים.

99@

 @99

סוגי אירועים למאפיין Nest Debug.

תכונות
kNestDebug_StringLogEntryEvent

אירוע של הודעת ניפוי באגים של מחרוזת חופשית.

kNestDebug_TokenizedHeaderEntryEvent

אירוע להעברת פרטי הכותרת שעברו המרה לאסימונים.

kNestDebug_TokenizedLogEntryEvent

אירוע של הודעת ניפוי באגים שהומר לאסימון.

CommandFlags

 CommandFlags
תכונות
kCommandFlag_ActionTimeValid

הגדרה של זמן פעולה חוקי.

kCommandFlag_ExpiryTimeValid

הגדרת מועד התפוגה תקף.

kCommandFlag_InitiationTimeValid

צריך להגדיר מתי שעת ההתחלה תקפה.

kCommandFlag_IsOneWay

מגדירים מתי הפקודה תהיה חד-כיוונית.

kCommandFlag_MustBeVersionValid

מגדירים מתי שדה הגרסה חוקי.

ImportanceType

 ImportanceType

החשיבות של הרשומה ביומן.

החשיבות משמשת לסינון אירועים לפני שהם פלט ביומן בפועל. לאחר שהאירוע יופיע ביומן, לא נקבעו הוראות נוספות להסרה שלו מהיומן. רמת החשיבות משמשת לתעדוף האחסון של אירועים. אם אירוע בעל חשיבות גבוהה מתווסף למאגר נתונים זמני מלא, האירועים מושמטים לפי סדר החשיבות (והגיל) כדי לכלול אותם. לכן, לרמות החשיבות יש ערך יחסי בלבד. אם מערכת משתמשת רק ברמת חשיבות אחת, האירועים מושמטים רק לפי סדר הגיל שלהם, למשל חוצץ טבעת.

תכונות
Debug

מידת החשיבות של ניפוי הבאגים מציינת את הרשומות ביומן שמעניינות את מפתחי המערכת, ומשמשות בעיקר בשלב הפיתוח.

יומני החשיבות של ניפוי הבאגים לא נלקחים בחשבון ברוחב הפס או בתקציבים של המכשירים המוגבלים. כתוצאה מכך, יש להשתמש בהם במערכות ייצור למשך זמן מוגבל בלבד.

Info

חשיבות המידע מציינת רשומות ביומן שמספקות תובנות וניתוחים נוספים לגבי המערכת הפעילה.

ניתן להשתמש ברמת הרישום ביומן במשך פרק זמן ארוך במערכת הייצור, או לשמש כרמת ברירת המחדל לרישום ביומן במסגרת ניסוי שטח. במכשירים המוגבלים, יש להביא בחשבון את הרשומות שנרשמו עם רמת המידע מבחינת רוחב הפס ותקציב הזיכרון, אבל לא במסגרת תקציב החשמל.

Production

חשיבות הייצור מציינת את הרשומות ביומן שמשמשות למעקב ולתחזוקה השוטפים של הסביבה העסקית של Nest.

במכשירים מוגבלים, רשומות שנרשמות עם חשיבות לייצור חייבים להביא בחשבון בתקציב החשמל והזיכרון, כי מצופה שהן תמיד יתועדו ויורידו את הנתונים מהמכשיר.

ProductionCritical

'חשיבות קריטית' בסביבת הייצור מציינת אירועים שאובדן שלהם ישפיע ישירות על תכונות שזמינות ללקוחות.

אפליקציות עשויות להשתמש באובדן של אירועים קריטיים בסביבת הייצור כדי לציין כשל במערכת. במכשירים מוגבלים, חובה להביא בחשבון את הרשומות עם חשיבות קריטית בסביבת הייצור, בתקציב החשמל והזיכרון, כי מצופה שהן תמיד יתועדו ויורידו את הנתונים מהמכשיר.

LoggingManagementStates

 LoggingManagementStates
תכונות
kLoggingManagementState_Holdoff

ההעברה של נתוני הרישום ביומן הושלמה. אנחנו לא מפעילים מחדש את היומן עד שהשהיית ההשהיה תסתיים.

kLoggingManagementState_Idle

לא מתבצע העברת עומס על היומן. אפשר להתחיל את ההעברה של היומן ללא אילוצים.

kLoggingManagementState_InProgress

מתבצעת הורדת הנתונים מהעומס ביומן.

kLoggingManagementState_Shutdown

אין אפשרות לבצע פעולת רישום ביומן.

TimestampType

 TimestampType

התקינות והסוג של חותמת הזמן שכלולים ב-EventOptions.

ערכי דף

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)

פונקציה שמספקת את הרכיב eventData עבור מערכת המשנה של רישום האירועים.

פונקציות מהסוג הזה צפויות לספק את הרכיב eventData עבור מערכת המשנה של רישום האירועים. הפונקציות מהסוג הזה מופעלות אחרי שמערכת המשנה של האירוע יצרה את כל המטא-נתונים הנדרשים של האירוע. הפונקציה מפעילה את הפונקציה עם אובייקט nl::Weave::TLV::TLVWriter שלתוכו תפיץ רכיב TLV יחיד עם תג kTag_EventData. הערך של הרכיב חייב להיות מבנה שמכיל את נתוני האירוע. יש ליצור את נתוני האירוע עצמם באמצעות תגי הקשר.

פרטים
פרמטרים
[in,out] ioWriter
הפניה לאובייקט nl::Weave::TLV::TLVWriter משמש ליצירת סדרה של נתוני אירועים.
[in] inDataTag
תג הקשר עבור ה-TLV שאנחנו כותבים.
[in] appData
הפניה להקשר ספציפי של אפליקציה.
ערכים מוחזרים
WEAVE_NO_ERROR
בהצלחה.
other
שגיאה מתאימה שמודיעה למתקשר שלא ניתן להשלים את העריכה של נתוני האירוע. יש להפיץ שגיאות מקריאות ל-ioWriter ללא מיפוי מחדש. אם הפונקציה מחזירה שגיאה מסוג כלשהו, יצירת האירוע מתבטלת והאירוע לא נכתב ביומן.
כדאי לעיין גם במאמר:
PlainTextWriter
EventWriterTLVCopy

FetchExternalEventsFunct

WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)

אב-טיפוס של פונקציה לקריאות חוזרות (callbacks) של פלטפורמה שאחזרת נתוני אירועים.

בדומה ל-FetchEventsListen, פונקציית האחזור הזו מחזירה את כל האירועים מ-EventLoadOutContext.mStartEventID דרך ExternalEvents.mLastEventID.

מצביע ההקשר הוא מסוג FetchExternalEventsContext. זה כולל את ה-EventLoadOutContext, וגם כמה משתני עזר לפורמט של TLV. הוא כולל גם מצביע למבנה ExternalEvents שנוצר במהלך הרישום של הקריאה החוזרת. זהו טווח של מזהה האירוע עבור הקריאה החוזרת.

בעת החזרה מהפונקציה, EventLoadOutContext.mCurrentEventID אמור לשקף את מזהה האירוע הראשון שלא נכתב בהצלחה למאגר ה-TLV. הפלטפורמה חייבת לכתוב את כותרת האירועים ואת הנתונים לכותב ה-TLV בפורמט הנכון, כפי שצוין על ידי פרוטוקול EventLogging. בנוסף, הפלטפורמה צריכה לשמור על ייחודיות של אירועים ועל חותמות זמן.

יש להפיץ את כל שגיאות ה-TLV לרמות גבוהות יותר. למשל, אם ייגמר המקום במאגר הזמני, תישלח הודעה שתישלח, ואחריה תופיע קריאה נוספת לקריאה החוזרת (callback) עם מזהה האירוע שיישאר.

פרטים
ערכים מוחזרים
WEAVE_ERROR_NO_MEMORY
אם אין מקום לכתיבת אירועים.
WEAVE_ERROR_BUFFER_TOO_SMALL
אם אין מקום לכתיבת אירועים.
WEAVE_NO_ERROR
בהצלחה.
WEAVE_END_OF_TLV
בהצלחה.

GenericTraitSinkCatalog

GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog

GenericTraitSourceCatalog

GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog

ImportanceType

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

החשיבות של הרשומה ביומן.

החשיבות משמשת לסינון אירועים לפני שהם פלט ביומן בפועל. לאחר שהאירוע יופיע ביומן, לא נקבעו הוראות נוספות להסרה שלו מהיומן. רמת החשיבות משמשת לתעדוף האחסון של אירועים. אם אירוע בעל חשיבות גבוהה מתווסף למאגר נתונים זמני מלא, האירועים מושמטים לפי סדר החשיבות (והגיל) כדי לכלול אותם. לכן, לרמות החשיבות יש ערך יחסי בלבד. אם מערכת משתמשת רק ברמת חשיבות אחת, האירועים מושמטים רק לפי סדר הגיל שלהם, למשל חוצץ טבעת.

IteratorCallback

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

איטרטור של 'כינוי תכונה'.

LoggingBufferHandler

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

NotifyExternalEventsDeliveredFunct

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

אב-טיפוס של פונקציה לקריאה חוזרת (callback) שמופעל כשנשלחים אירועים חיצוניים למנוי המרוחק.

כשהאירועים החיצוניים נמסרים למנוי מרוחק, המנוע ישלח התראה לספק האירועים החיצוני. הקריאה החוזרת כוללת את האירוע של המזהה האחרון שנמסר ואת המזהה של המנוי שקיבל את האירוע.

פרטים
פרמטרים
[in] inEv
אובייקט אירועים חיצוני שמתאים לאירועים שנמסרו
[in] inLastDeliveredEventID
מזהה האירוע האחרון שנשלח למנוי.
[in] inRecipientNodeID
מזהה צומת Weave של הנמען

NotifyExternalEventsEvictedFunct

void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)

אב-טיפוס של פונקציה לקריאה חוזרת (callback) מופעל כשאירועים חיצוניים יוצאים ממאגרי האחסון.

כשאובייקט האירועים החיצוניים הוצא ממאגר הנתונים הזמני של ההודעות היוצאות, המנוע ישלח התראה לספק האירועים החיצוני. הקריאה החוזרת מכילה את האירוע החיצוני שיש להוציא.

פרטים
פרמטרים
[in] inEv
אובייקט לאירועים חיצוניים שצריך להסיר

PropertyDictionaryKey

uint16_t PropertyDictionaryKey

PropertyPathHandle

uint32_t PropertyPathHandle

PropertyPathHandle הוא גיבוב מספרי ייחודי של 32 ביט של נתיב WDM ביחס לשורש של מופע trait.

הוא מורכב משני חלקים:

  • מספר נמוך יותר של 16 סיביות שממופה לחלק הסטטי של הסכימה.
  • כאשר 16 הביטים התחתונים מפנים לנתיב בתוך רכיב מילון, מופיע מספר עליון בן 16 ביט שמייצג את מפתח המילון שמשויך לאותו רכיב. אם ה-16 סיביות התחתונות מתייחסות לרכיב שאינו מילון, אז ה-16 סיביות העליונים צריכות להיות 0.

כמה מאפיינים:

  • לכל תכונה יש מרחב כינויים משלה בנתיב.
  • לכל נתיב משנה ייחודי של WDM יהיה PropertyPathHandle ייחודי דומה.
  • PropertyPathHandles נוצרים באופן אוטומטי (בצורה ידנית בינתיים) על ידי מהדר תכונות מ-IDL, והם מיוצגים כרשימה של מספרים (enumerant list) בקובץ הכותרת של התכונה התואמת.
  • לפי המבנה הזה, הלוגיקה של האפליקציות אף פעם לא צריכה לטפל בנתיבי WDM ישירות. במקום זאת, האינטראקציות שלהם עם WDM מתבצעות אך ורק באמצעות הכינויים האלה.
  • לכינויים של נתיב יש שני ערכים שמורים שיש להם משמעות ספציפית:
    • 0 מציין כינוי מסוג 'NULL'
    • 1 מציין נקודת אחיזה שמפנה לשורש של מופע ה-trait.

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.

TraitDataHandle

uint16_t TraitDataHandle

duration_t

uint32_t duration_t

סוג המשמש לתיאור משך הזמן, באלפיות השנייה.

event_id_t

uint32_t event_id_t

הסוג של מזהה האירוע.

timestamp_t

uint32_t timestamp_t

סוג המשמש לתיאור חותמת הזמן באלפיות השנייה.

utc_timestamp_t

uint64_t utc_timestamp_t

הסוג שמשמש לתיאור חותמת הזמן של שעון UTC באלפיות השנייה.

משתנים

sInstance

LoggingManagement sInstance

sLogFileName

char sLogFileName[] = "topazlog"

פונקציות

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
)

פונקציית עזר שמתרגמת רכיב eventdata שכבר הוגדר בהמשכים למאגר הנתונים הזמני.

פרטים
פרמטרים
[in,out] ioWriter
הכותב שישמש לכתיבת האירוע.
[in] inDataTag
תג הקשר עבור ה-TLV שאנחנו מעתיקים. לא בשימוש כאן, אבל נדרש על ידי ה-typedef עבור EventWriterFunct.
[in] appData
מצביע אל ה-TLVReader שמכיל נתוני אירועים מסודרים.
ערכים מוחזרים
WEAVE_NO_ERROR
בהצלחה.
other
שגיאות אחרות שמחזירות לי מ-ioWriter.

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
)

זהו הטמעה אופטימלית של האלגוריתם להשוואה בין גרסאות.

בצד הלקוח, הגרסה שמתקבלת מהשירות היא תמיד העדכנית ביותר.

IsVersionNewerOrEqual

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

איתור

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

פונקציית כלי עזר שמחפשת TraitUpdatableDataSink בקטלוג של TraitDataSink.

פרטים
פרמטרים
[in] aTraitDataHandle
ידית הכיור שיש לחפש.
[in] aDataSinkCatalog
קטלוג לחיפוש.
החזרות
מצביע אל ה-TraitUpdatableDataSink. NULL אם הכינוי לא קיים או שהוא מפנה ל-TraitDataSink שלא ניתן לעדכון.

LogEvent

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

רישום אירוע ביומן מטופס שעבר תהליך סריאליזציה.

הפונקציה מתעדת אירוע שמיוצג כ-nl::Weave::TLV::TLVReader. פירוש הדבר הוא שהייצוג של נתוני האירוע כבר מאורגן באחסון הבסיסי ב-nl::Weave::TLV::TLVReader. ה-nl::Weave::TLV::TLVReader צפוי להכיל לפחות רכיב נתונים אחד, רכיב זה חייב להיות מבנה. הרכיב הראשון שנקרא מהקורא נחשב לנתוני אירועים ומאוחסן ביומן האירועים. נתוני האירוע חייבים לכלול תגי הקשר שיש לפרש אותם בתוך הסכימה שמזוהה על ידי inProfileID ו-inEventType. המערכת תתעלם מהתג של הרכיב הראשון. מערכת רישום האירועים תחליף אותו בתג eventData.

האירוע מתועד אם ה-inחשיבות שלו חורגת מסף הרישום ביומן שמצוין ב-LoggingConfiguration. אם חשיבות האירוע לא עומדת בסף הנוכחי, היא מושמטת והפונקציה מחזירה את הערך 0 כמזהה האירוע שמתקבל.

הווריאנט הזה של ההפעלה מציין באופן מפורש את כל אפשרויות ברירת המחדל של האירוע:

  • לאירוע חותמת זמן עם השעה הנוכחית בנקודת השיחה.
  • כשהאירוע יסומן כקשור למכשיר שממנו השיחה בוצעה,
  • האירוע הוא אירוע עצמאי, ואינו קשור לאף אירוע אחר,
  • שהאירוע מסומן כלא דחוף,

פרטים
פרמטרים
[in] inSchema
סכימה שמגדירה חשיבות, מזהה פרופיל וסוג מבנה של האירוע הזה.
[in] inData
הקורא TLV מכיל את נתוני האירוע כרכיב הראשון.
החזרות
event_id_t מזהה האירוע אם האירוע נכתב ביומן, אחרת 0.

LogEvent

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

רישום אירוע ביומן מטופס שעבר תהליך סריאליזציה, עם אפשרויות נוספות.

הפונקציה מתעדת אירוע שמיוצג כ-nl::Weave::TLV::TLVReader. פירוש הדבר הוא שהייצוג של נתוני האירוע כבר מאורגן באחסון הבסיסי ב-nl::Weave::TLV::TLVReader. ה-nl::Weave::TLV::TLVReader צפוי להכיל לפחות רכיב נתונים אחד, רכיב זה חייב להיות מבנה. הרכיב הראשון שנקרא מהקורא נחשב לנתוני אירועים ומאוחסן ביומן האירועים. נתוני האירוע חייבים לכלול תגי הקשר שיש לפרש אותם בתוך הסכימה שמזוהה על ידי inProfileID ו-inEventType. המערכת תתעלם מהתג של הרכיב הראשון. מערכת רישום האירועים תחליף אותו בתג eventData.

האירוע מתועד אם ה-inחשיבות שלו חורגת מסף הרישום ביומן שמצוין ב-LoggingConfiguration. אם חשיבות האירוע לא עומדת בסף הנוכחי, היא מושמטת והפונקציה מחזירה את הערך 0 כמזהה האירוע שמתקבל.

וריאנט זה של ההפעלה מאפשר למתקשר להגדיר כל שילוב של EventOptions:

  • בחותמת הזמן, כאשר 0 ברירת המחדל היא השעה הנוכחית בנקודת השיחה.
  • הקטע "root" של מקור האירוע (מקור האירוע ומזהה trait), אם הערך הוא NULL, ברירת המחדל היא המכשיר הנוכחי. האירוע מסומן כקשור למכשיר שמבצע את השיחה.
  • מזהה אירוע קשור לקיבוץ מזהי אירועים. כשמזהה האירוע הקשור הוא 0, האירוע מסומן כלא קשור לאף אירוע אחר.
  • דחיפות; כברירת מחדל, לא דחופה.

פרטים
פרמטרים
[in] inSchema
סכימה שמגדירה חשיבות, מזהה פרופיל וסוג מבנה של האירוע הזה.
[in] inData
הקורא TLV מכיל את נתוני האירוע כרכיב הראשון. חייב להיות NULL
[in] inOptions
האפשרויות לגבי המטא-נתונים של האירוע. יכול להיות NULL.
החזרות
event_id_t מזהה האירוע אם האירוע נכתב ביומן, אחרת 0.

LogEvent

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

רישום אירוע ביומן באמצעות קריאה חוזרת (callback).

הפונקציה מתעדת אירוע שמיוצג כ-EventWriterFunct והקשר appData ספציפי לאפליקציה. הפונקציה כותבת את המטא-נתונים של האירוע וקוראת ל-inEventWriter עם ההפניה אל nl::Weave::TLV::TLVWriter והקשר inAppData, כדי שקוד המשתמש יוכל לפלוט את נתוני האירוע ישירות ביומן האירועים. רישום אירועים מהסוג הזה מצמצם את צריכת הזיכרון, כי נתוני האירועים מסודרים ישירות למאגר הנתונים הזמני. נתוני האירועים חייבים לכלול תגי הקשר כדי לפרש אותם בתוך הסכימה שמזוהה על ידי inProfileID ו-inEventType. המערכת תתעלם מהתג של הרכיב הראשון. מערכת רישום האירועים תחליף אותו בתג eventData.

האירוע מתועד אם ה-inחשיבות שלו חורגת מסף הרישום ביומן שמצוין ב-LoggingConfiguration. אם חשיבות האירוע לא עומדת בסף הנוכחי, היא מושמטת והפונקציה מחזירה את הערך 0 כמזהה האירוע שמתקבל.

הווריאנט הזה של ההפעלה מציין באופן מפורש את כל אפשרויות ברירת המחדל של האירוע:

  • לאירוע חותמת זמן עם השעה הנוכחית בנקודת השיחה.
  • כשהאירוע יסומן כקשור למכשיר שממנו השיחה בוצעה,
  • האירוע הוא אירוע עצמאי, ואינו קשור לאף אירוע אחר,
  • שהאירוע מסומן כלא דחוף,

פרטים
פרמטרים
[in] inSchema
סכימה שמגדירה חשיבות, מזהה פרופיל וסוג מבנה של האירוע הזה.
[in] inEventWriter
הקריאה החוזרת שיש להפעיל כדי לסדר את נתוני האירוע בפועל
[in] inAppData
הקשר האפליקציה של הקריאה החוזרת (callback).
החזרות
event_id_t מזהה האירוע אם האירוע נכתב ביומן, אחרת 0.

LogEvent

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

רישום אירוע באמצעות קריאה חוזרת (callback), עם אפשרויות.

הפונקציה מתעדת אירוע שמיוצג כ-EventWriterFunct והקשר appData ספציפי לאפליקציה. הפונקציה כותבת את המטא-נתונים של האירוע וקוראת ל-inEventWriter עם ההפניה אל nl::Weave::TLV::TLVWriter והקשר inAppData, כדי שקוד המשתמש יוכל לפלוט את נתוני האירוע ישירות ביומן האירועים. רישום אירועים מהסוג הזה מצמצם את צריכת הזיכרון, כי נתוני האירועים מסודרים ישירות למאגר הנתונים הזמני. נתוני האירועים חייבים לכלול תגי הקשר כדי לפרש אותם בתוך הסכימה שמזוהה על ידי inProfileID ו-inEventType. המערכת תתעלם מהתג של הרכיב הראשון. מערכת רישום האירועים תחליף אותו בתג eventData.

האירוע מתועד אם ה-inחשיבות שלו חורגת מסף הרישום ביומן שמצוין ב-LoggingConfiguration. אם חשיבות האירוע לא עומדת בסף הנוכחי, היא מושמטת והפונקציה מחזירה את הערך 0 כמזהה האירוע שמתקבל.

וריאנט זה של ההפעלה מאפשר למתקשר להגדיר כל שילוב של EventOptions:

  • בחותמת הזמן, כאשר 0 ברירת המחדל היא השעה הנוכחית בנקודת השיחה.
  • הקטע "root" של מקור האירוע (מקור האירוע ומזהה trait), אם הערך הוא NULL, ברירת המחדל היא המכשיר הנוכחי. האירוע מסומן כקשור למכשיר שמבצע את השיחה.
  • מזהה אירוע קשור לקיבוץ מזהי אירועים. כשמזהה האירוע הקשור הוא 0, האירוע מסומן כלא קשור לאף אירוע אחר.
  • דחיפות; כברירת מחדל, לא דחופה.

פרטים
פרמטרים
[in] inSchema
סכימה שמגדירה חשיבות, מזהה פרופיל וסוג מבנה של האירוע הזה.
[in] inEventWriter
הקריאה החוזרת שיש להפעיל כדי לסדר את נתוני האירוע בפועל
[in] inAppData
הקשר האפליקציה של הקריאה החוזרת (callback).
[in] inOptions
האפשרויות לגבי המטא-נתונים של האירוע. יכול להיות NULL.
החזרות
event_id_t מזהה האירוע אם האירוע נכתב ביומן, אחרת 0.

LogFreeform

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

LogFreeform מפיק מחרוזת חופשית לזרם האירועים שמוגדר כברירת מחדל.

המחרוזת תמוקם במבנה של אירועי ניפוי באגים, שזהה מבחינה מבנית למחרוזות אחרות שנרשמו ביומן. מזהה הפרופיל של האירוע יהיה זה של אירוע Nest Debug, וסוג האירוע יהיה kNestDebug_StringLogEntryEvent.

פרטים
פרמטרים
[in] inImportance
החשיבות של הרשומה ביומן. אם החשיבות נמוכה מהחשיבות הנוכחית, האירוע לא יירשם בפועל
[in] inFormat
מחרוזת פורמט תואמת ל-printf, ואחריה ארגומנטים לעיצוב
החזרות
event_id_t מזהה האירוע אם האירוע נכתב ביומן, אחרת 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
)

פונקציית עזר שמפיקה טקסט חופשי כאירוע של ניפוי באגים.

אירוע ניפוי הבאגים הוא מבנה עם אזור יומן וטקסט חופשי.

פרטים
פרמטרים
[in,out] ioWriter
הכותב שישמש לכתיבת האירוע.
[in] appData
מצביע אל ה-DebugLogContext, מבנה שמכיל פורמט מחרוזת, ארגומנטים ואזור יומן
[in] inDataTag
תג הקשר עבור ה-TLV שאנחנו כותבים. לא בשימוש כאן, אבל נדרש על ידי ה-typedef עבור EventWriterFunct.
ערכים מוחזרים
WEAVE_NO_ERROR
בהצלחה.
other
שגיאות אחרות שמחזירות לי מ-ioWriter.

PlainTextWriter

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

פונקציית עזר שמפיקה טקסט חופשי כאירוע של ניפוי באגים.

אירוע ניפוי הבאגים הוא מבנה עם אזור יומן וטקסט חופשי.

פרטים
פרמטרים
[in,out] ioWriter
הכותב שישמש לכתיבת האירוע.
[in] inDataTag
התג שצריך להפיק
[in] appData
מצביע אל ה-DebugLogContext, מבנה שמכיל פורמט מחרוזת, ארגומנטים ואזור יומן
ערכים מוחזרים
WEAVE_NO_ERROR
בהצלחה.
other
שגיאות אחרות שייתכן שיוחזרו מה-ioWriter.

אופרטור!=

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

אופרטור==

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