संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

nl::वेव::प्रोफ़ाइल::DataManagement_current

इस नेमस्पेस में 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
लॉग इन करना सेटिंग के टैग.
@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 टाइपडेफ़
DataVersion टाइपडेफ़
uint64_t
EventProcessor टाइपडेफ़
void *
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData) टाइपडेफ़
यह फ़ंक्शन, इवेंट लॉगिंग सबसिस्टम के लिए eventData एलिमेंट देता है.
FetchExternalEventsFunct)(EventLoadOutContext *aContext) टाइपडेफ़
इवेंट कॉलबैक फ़ेच करने वाले प्लैटफ़ॉर्म कॉलबैक के लिए, एक फ़ंक्शन प्रोटोटाइप.
GenericTraitSinkCatalog टाइपडेफ़
GenericTraitSourceCatalog टाइपडेफ़
ImportanceType टाइपडेफ़
लॉग एंट्री की अहमियत.
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext) टाइपडेफ़
void(*
ट्रेस हैंडल इटरेटर.
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer) टाइपडेफ़
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID) टाइपडेफ़
void(*
कॉलबैक का फ़ंक्शन प्रोटोटाइप तब किया जाता है, जब रिमोट इवेंट के लिए बाहरी इवेंट डिलीवर किए जाते हैं.
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv) टाइपडेफ़
void(*
कॉलबैक के लिए फ़ंक्शन प्रोटोटाइप तब शुरू होता है, जब बफ़र से बाहरी इवेंट निकाल दिए जाते हैं.
PropertyDictionaryKey टाइपडेफ़
uint16_t
PropertyPathHandle टाइपडेफ़
uint32_t
PropertyPathHandle, किसी खास इंस्टेंस के रूट की तुलना में WDM पाथ का यूनीक 32-बिट अंकों वाला हैश है.
PropertySchemaHandle टाइपडेफ़
uint16_t
SchemaVersion टाइपडेफ़
uint16_t
SingleResourceSinkTraitCatalog टाइपडेफ़
SingleResourceSourceTraitCatalog टाइपडेफ़
TimestampType टाइपडेफ़
EventOptions में शामिल टाइमस्टैंप की वैधता और टाइप.
TraitDataHandle टाइपडेफ़
uint16_t
duration_t nl::Weave::प्रोफ़ाइल::DataManagement_current::duration_t
uint32_t
अवधि के बारे में बताने के लिए इस्तेमाल किया गया टाइप, मिलीसेकंड में.
event_id_t nl::Weave::प्रोफ़ाइल::DataManagement_current::event_id_t
uint32_t
इवेंट आईडी का टाइप.
timestamp_t nl::Weave::प्रोफ़ाइल::DataManagement_current::timestamp_t
uint32_t
इस टाइमस्टैंप का इस्तेमाल, मिलीसेकंड में टाइमस्टैंप की जानकारी देने के लिए किया जाता है.
utc_timestamp_t nl::Weave::प्रोफ़ाइल::DataManagement_current::utc_timestamp_t
uint64_t
यूटीसी टाइमस्टैंप को मिलीसेकंड में बताने के लिए, इस्तेमाल किया जाने वाला प्रकार.

वैरिएबल

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)
हेल्पर फ़ंक्शन, जो पहले से ही क्रम से लगाए गए इवेंट डेटा एलिमेंट का इवेंट बफ़र में अनुवाद करता है.
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)
उपयोगिता फ़ंक्शन, जो TraitDataSink कैटलॉग में TraitUpdatableDataSink को ढूंढता है.
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)
कॉलबैक के ज़रिए इवेंट को लॉग करें.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
कॉलबैक के ज़रिए, किसी इवेंट को लॉग करें.
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
लॉगफ़्रीफ़ॉर्म, डिफ़ॉल्ट इवेंट स्ट्रीम को फ़्रीफ़ॉर्म स्ट्रिंग बनाता है.
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::प्रोफ़ाइल::DataManagement_current::हमेशा स्वीकार करेंDataElementAccessControlDelegate
nl::Weave::प्रोफ़ाइल::DataManagement_current::BuilderBase

WDM मैसेज एन्कोडर के लिए बेस क्लास.

nl::Weave::प्रोफ़ाइल::DataManagement_current::CircularEventReader

ऐसा TLVReader जो CircularEventBuffer के साथ काम करता है.

nl::वेव::प्रोफ़ाइल::DataManagement_current::कमांड
nl:: Weave::प्रोफ़ाइल::DataManagement_current::CommandSender
nl:: Weave::प्रोफ़ाइल::DataManagement_current::जेनेरिकTraitCatalogImpl

Weave ने एक एट्रिब्यूट के तौर पर डेटा के उन इंस्टेंस के कलेक्शन के लिए, TraitCatalogBase इंटरफ़ेस को लागू किया है जिनका इस्तेमाल एक ही संसाधन के लिए किया जाता है.

nl::वेव::प्रोफ़ाइल::DataManagement_current::IDataElementAccessControlDelegate

ऐसा इंटरफ़ेस जिसे NotifyRequest में, डेटा एलिमेंट के प्रोसेसर से लागू किया जाना है.

nl:: Weave::प्रोफ़ाइल::DataManagement_current::IDirtyPathCut
nl::Weave::प्रोफ़ाइल::DataManagement_current::IPathFilter
nl::Weave::प्रोफ़ाइल::DataManagement_current::IWeavePublisherLock

ऐसा इंटरफ़ेस जिसे मुख्य WDM डेटा स्ट्रक्चर के ऐक्सेस को क्रम से लगाने के लिए, ऐप्लिकेशन से लागू किया जाना है.

nl::Weave::प्रोफ़ाइल::DataManagement_current::IWeaveWDMम्यूटx

म्यूटक्स ऑब्जेक्ट का इंटरफ़ेस.

nl::Weave::प्रोफ़ाइल::DataManagement_current::ListBuilderBase

WDM संदेश एन्कोडर के लिए बेस क्लास, जो डेटा सूची और वर्शन सूचियों जैसे TLV सारणी एलीमेंट के विशेषज्ञ हैं.

nl::Weave::प्रोफ़ाइल::DataManagement_current::ListParserBase

WDM मैसेज पार्सर के लिए बेस क्लास, जो डेटा सूची और वर्शन सूचियों जैसे TLV अरे एलिमेंट में विशेषज्ञ हैं.

nl::वेव::प्रोफ़ाइल::DataManagement_current::LogBDXUpload
nl::वेव::प्रोफ़ाइल::DataManagement_current::LoggingConfiguration

LoggingConfiguration, Weave इवेंट लॉगिंग सबसिस्टम के कॉन्फ़िगर किए जा सकने वाले कॉम्पोनेंट को एनकैप्सुलेट करता है.

nl::वेव::प्रोफ़ाइल::DataManagement_current::LoggingManagement

मेमोरी इवेंट लॉग में प्रबंधन के लिए क्लास.

nl::Weave::प्रोफ़ाइल::DataManagement_current::सूचना इंजन
nl:: Weave::प्रोफ़ाइल::DataManagement_current::ParserBase

WDM मैसेज पार्सर के लिए बेस क्लास.

nl:: Weave::प्रोफ़ाइल::DataManagement_current::ResourceIdentifier

किसी संसाधन के आईडी की जानकारी देने वाला स्ट्रक्चर.

nl::Weave::प्रोफ़ाइल::DataManagement_current::सिंगलरिसोर्सट्रैककैटलॉग
nl::Weave::प्रोफ़ाइल::DataManagement_current::SubscriptionClient
nl::Weave::प्रोफ़ाइल::DataManagement_current::Subscription Engine

यह एक सिंगलटन है, जिसमें क्लाइंट और प्रकाशक, दोनों की ओर वाली WW Next सदस्यताएं होस्ट की जाती हैं.

nl::Weave::प्रोफ़ाइल::DataManagement_current::SubscriptionHandler
nl::Weave::प्रोफ़ाइल::DataManagement_current::TraitCatalogBase
nl:: Weave::प्रोफ़ाइल::DataManagement_current::TraitDataSink
nl::Weave::प्रोफ़ाइल::DataManagement_current::TraitDataSource
nl::Weave::प्रोफ़ाइल::DataManagement_current::TraitSchema Engine

स्कीमा इंजन खास विशेषता से जुड़ी स्कीमा जानकारी को लेता है और उसे पार्स करने के लिए सुविधाएं देता है और उसे एक ऐसे रूप में अनुवाद करता है जिसका इस्तेमाल WDM मशीनी कर सकती है.

nl::वेव::प्रोफ़ाइल::DataManagement_current::TraitUpdatableDataSink
nl::Weave::प्रोफ़ाइल::DataManagement_current::UpdateClient
nl::Weave::प्रोफ़ाइल::DataManagement_current::अपडेट डिक्शनरीDirtyPathCut

डिक्शनरी चाइल्ड को प्रोसेस करने के दौरान डिक्शनरी को वापस 'मंज़ूरी बाकी' की सूची में रखने के लिए यूटिलिटी क्लास.

nl::Weave::प्रोफ़ाइल::DataManagement_current::UpdateDirtyPathFilter

सूचना को हैंडल करते समय पाथ को फ़िल्टर करने के लिए यूटिलिटी क्लास.

nl:: Weave::प्रोफ़ाइल::DataManagement_current::UpdateEncoder

यह ऑब्जेक्ट, WDM UpdateRequest को और CURRENTUpdateRequest पेलोड को कोड में बदलता है.

nl::Weave::प्रोफ़ाइल::DataManagement_current::ViewClient

स्ट्रक्चर

nl:: Weave::प्रोफ़ाइल::DataManagement_current::CercularEventBuffer

इंटरनल इवेंट बफ़र, nl::Weave::TLV::WeaveCircularTLVBuffer के आस-पास बनाया गया.

nl::Weave::प्रोफ़ाइल::DataManagement_current::ConstSchemaVersionRange
nl:: Weave::प्रोफ़ाइल::DataManagement_current::CopyAndEditDeltaTimeContext

इवेंट की सूची में बदलाव करने के लिए अंदरूनी स्ट्रक्चर.

nl::Weave::प्रोफ़ाइल::DataManagement_current::DebugLogContext
nl::Weave::प्रोफ़ाइल::DataManagement_current::Detailsरूटसेक्शन

किसी खास इंस्टेंस का पूरा रिज़ॉल्यूशन देने वाला स्ट्रक्चर.

nl:: Weave::प्रोफ़ाइल::DataManagement_current::EventEnveplaceholderContext

इवेंट ट्रैवर्स करने के लिए अंदरूनी स्ट्रक्चर.

nl:: Weave::प्रोफ़ाइल::DataManagement_current::EventLoadOutContext

आउटपुट में इवेंट सूचियों को कॉपी करने के लिए स्ट्रक्चर.

nl::Weave::प्रोफ़ाइल::DataManagement_current::EventOptions

वह स्ट्रक्चर जो अलग-अलग इवेंट फ़ील्ड के लिए विकल्प देता है.

nl::Weave::प्रोफ़ाइल::DataManagement_current::EventSchema

वह स्ट्रक्चर जो इवेंट मेटाडेटा के लिए स्कीमा तय करता है.

nl::Weave::प्रोफ़ाइल::DataManagement_current::ExternalEvent

प्लैटफ़ॉर्म पर सेव किए गए इवेंट को ट्रैक करने के लिए स्ट्रक्चर.

nl::Weave::प्रोफ़ाइल::DataManagement_current::LogStorageResources

लॉगिंग मैनेजमेंट को शुरू करने में इस्तेमाल की जाने वाली हेल्पर क्लास.

nl:: Weave::प्रोफ़ाइल::DataManagement_current::ReclaimEventCtx
nl::Weave::प्रोफ़ाइल::DataManagement_current::SchemaVersionRange
nl::Weave::प्रोफ़ाइल::DataManagement_current::TraitPath
nl::Weave::प्रोफ़ाइल::DataManagement_current::TraitPathStore
nl:: Weave::प्रोफ़ाइल::DataManagement_current::VersionedTraitPath

यूनियन

nl::वेव::प्रोफ़ाइल::DataManagement_current::टाइमस्टैंप

वह यूनियन जो ऐप्लिकेशन सेट सिस्टम या यूटीसी टाइमस्टैंप उपलब्ध कराता है.

नेमस्पेस

nl:: Weave::प्रोफ़ाइल::DataManagement_current::BaseMessageWithSubscribeId
nl:: Weave::प्रोफ़ाइल::DataManagement_current::CustomCommand

WDM कस्टम कमांड की परिभाषा.

nl::Weave::प्रोफ़ाइल::DataManagement_current::CustomCommandResponse

WDM कस्टम कमांड रिस्पॉन्स डेफ़िनिशन.

nl::Weave::प्रोफ़ाइल::DataManagement_current::DataElement

WDM डेटा एलिमेंट की परिभाषा.

nl::वेव::प्रोफ़ाइल::DataManagement_current::DataList
nl::वेव::प्रोफ़ाइल::DataManagement_current::इवेंट
nl::Weave::प्रोफ़ाइल::DataManagement_current::EventList
nl::Weave::प्रोफ़ाइल::DataManagement_current::सूचना के अनुरोध
nl::वेव::प्रोफ़ाइल::DataManagement_current::पाथ

WDM पाथ परिभाषा.

nl::वेव::प्रोफ़ाइल::DataManagement_current::PathList

WDM पाथ की परिभाषा.

nl::वेव::प्रोफ़ाइल::DataManagement_current::प्लैटफ़ॉर्म
nl::वेव::प्रोफ़ाइल::DataManagement_current::अस्वीकार करने का रिकॉर्ड
nl:: Weave::प्रोफ़ाइल::DataManagement_current::अस्वीकार किए गए रिकॉर्ड की सूची
nl:: Weave::प्रोफ़ाइल::DataManagement_current::StatusElement

WDM स्थिति एलिमेंट की परिभाषा.

nl::वेव::प्रोफ़ाइल::DataManagement_current::StatusList
nl:: Weave::प्रोफ़ाइल::DataManagement_current::SubscribecancelRequest
nl::Weave::प्रोफ़ाइल::DataManagement_current::SubscribeVerifyRequest
nl::Weave::प्रोफ़ाइल::DataManagement_current::SubscribeRequest
nl::Weave::प्रोफ़ाइल::DataManagement_current::SubscribeResponse
nl:: Weave::प्रोफ़ाइल::DataManagement_current::UpdateRequest

WDM अपडेट अनुरोध की परिभाषा.

nl::Weave::प्रोफ़ाइल::DataManagement_current::UpdateResponse
nl::Weave::प्रोफ़ाइल::DataManagement_current::VersionList
nl:: Weave::प्रोफ़ाइल::DataManagement_current::ViewRequest
nl:: Weave::प्रोफ़ाइल::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

लॉग इन करना सेटिंग के टैग.

प्रॉपर्टी
kTag_CurrentImportance

लॉगिंग की मौजूदा अहमियत, वैल्यू ImportanceType की तरह है.

kTag_ImportanceExpiration

समय, यूटीसी सेकंड में जब मौजूदा बढ़ाई गई लॉगिंग सेटिंग डिफ़ॉल्ट मान पर वापस आ जाएंगी.

kTag_LoggingDestination

लॉग अपलोड के डेस्टिनेशन की जानकारी देने वाला यूआरएल.

kTag_MaximumLogUploadInterval

अपने-आप ट्रिगर हुए लॉग अपलोड करने की कोशिशों के बीच, सेकंड में ज़्यादा से ज़्यादा अवधि.

kTag_MinimumLogUploadInterval

अपने-आप लॉग अपलोड होने की कोशिशों के बीच, सेकंड में कम से कम अवधि.

kTag_TraitLoggingImportance

चुने हुए प्रोफ़ाइल को चुने हुए ऊंचे लेवल पर मैप करने के लिए, एक वैकल्पिक कलेक्शन.

कैटगरी के हर एलिमेंट को एक फ़ॉर्म (प्रोफ़ाइल,पाथ, लॉगिंग इंपोर्ट) कहा जाता है. इससे, चुने गए तरीके से लॉगिंग को सिस्टम के सबसेट से चुना जाता है. प्रोफ़ाइल लॉगिन करने की प्राथमिकता तब मायने रखती है, जब लॉगिंग की प्राथमिकता, मौजूदा इंपोर्ट से ज़्यादा हो. साथ ही, इस समय की समयसीमा, मौजूदा इंपोर्ट के बराबर हो.

@96

 @96

लॉगिंग क्षमताओं के लिए टैग.

प्रॉपर्टी
kTag_LogBufferingCapacity

kB में लॉग बफ़रिंग क्षमता के बारे में बताने वाला 32-बिट बिना साइन वाला पूर्णांक.

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-बिट इंटिजर, जो एट्रिब्यूट की प्रोफ़ाइल आईडी के बराबर होता है.

kTag_EventType

ज़रूरी है. 16-बिट बिना हस्ताक्षर वाला पूर्णांक, जो इस तरह के इवेंट के लिए wDL.event.id के बराबर होता है.

kTag_EventUTCTimestamp

ज़रूरी नहीं. इवेंट का यूटीसी टाइमस्टैंप, मिलीसेकंड में.

kTag_ExternalEventStructure

बाहरी इवेंट के लिए अंदरूनी टैग. वायर में कभी भी ट्रांसमिट नहीं किया जाना चाहिए, Weave लाइब्रेरी के बाहर कभी भी इस्तेमाल नहीं किया जाना चाहिए.

kTag_RelatedEventID

ज़रूरी नहीं.

उस इवेंट का आईडी जिससे यह इवेंट जुड़ा है. अगर इसे नहीं डाला जाता है, तो वैल्यू kTag_EventID की वैल्यू के बराबर होती है.

kTag_RelatedEventImportance

ज़रूरी नहीं.

मिलते-जुलते इवेंट की अहमियत. अगर इसे नहीं छोड़ा जाता है, तो वैल्यू kTag_EventImportance की वैल्यू के बराबर होती है.

@98

 @98

डीबग एट्रिब्यूट के लिए प्रोफ़ाइल की परिभाषाएं.

@99

 @99

Nest Debug एट्रिब्यूट के लिए इवेंट टाइप.

प्रॉपर्टी
kNestDebug_StringLogEntryEvent

फ़्रीफ़ॉर्म स्ट्रिंग डीबग मैसेज के लिए इवेंट.

kNestDebug_TokenizedHeaderEntryEvent

टोकन वाले हेडर की जानकारी देने वाला इवेंट.

kNestDebug_TokenizedLogEntryEvent

टोकन वाले डीबग मैसेज का इवेंट.

कमांडफ़्लैग

 CommandFlags
प्रॉपर्टी
kCommandFlag_ActionTimeValid

कार्रवाई का समय मान्य होने पर सेट करें.

kCommandFlag_ExpiryTimeValid

खत्म होने का समय मान्य होने पर सेट करें.

kCommandFlag_InitiationTimeValid

सेट करें कि init का समय मान्य है या नहीं.

kCommandFlag_IsOneWay

सेट करें कि कमांड एकतरफ़ा है या नहीं.

kCommandFlag_MustBeVersionValid

सेट करें कि वर्शन फ़ील्ड कब मान्य है.

अहमियत का प्रकार

 ImportanceType

लॉग एंट्री की अहमियत.

अहमियत का इस्तेमाल इवेंट को फ़िल्टर करने के लिए किया जाता है, ताकि उन्हें लॉग में वाकई शामिल किया जा सके. लॉग में इवेंट के बाद, हम उसे लॉग से मिटाने के लिए और प्रावधान नहीं करते. अहमियत के लेवल का इस्तेमाल करके, इवेंट के स्टोरेज को प्राथमिकता दी जाती है. अगर ज़्यादा अहम इवेंट में कोई इवेंट पूरी तरह से जोड़ा जाता है, तो उसकी अहमियत के हिसाब से इवेंट को इवेंट में शामिल नहीं किया जाता. वैसे भी, अहमियत के लेवल की सिर्फ़ मिलती-जुलती वैल्यू होती है. अगर कोई सिस्टम सिर्फ़ एक ज़रूरी लेवल का इस्तेमाल कर रहा है, तो इवेंट सिर्फ़ उम्र के मुताबिक ड्रॉप किए जाते हैं, जैसे कि रिंग बफ़र.

प्रॉपर्टी
Debug

डीबग की अहमियत, सिस्टम के डेवलपर की पसंद के मुताबिक बनाई गई लॉग एंट्री दिखाती है. इसका इस्तेमाल, मुख्य रूप से डेवलपमेंट फ़ेज़ में किया जाता है.

डीबग ज़रूरी लॉग, पाबंदी वाले डिवाइसों के बैंडविड्थ या पावर बजट में शामिल नहीं किए जाते. इस वजह से, उनका इस्तेमाल प्रोडक्शन सिस्टम में सीमित समय के लिए किया जाना चाहिए.

Info

जानकारी की अहमियत उन लॉग एंट्री को दिखाती है जो चल रहे सिस्टम के लिए अतिरिक्त अहम जानकारी और गड़बड़ी की जानकारी देती हैं.

प्रोडक्शन सिस्टम में, जानकारी लॉग करने के लेवल का इस्तेमाल लंबे समय तक किया जा सकता है. इसके अलावा, फ़ील्ड ट्रायल में इसे डिफ़ॉल्ट लॉग लेवल के रूप में इस्तेमाल किया जा सकता है. प्रतिबंधित डिवाइसों पर, जानकारी स्तर के साथ लॉग की गई एंट्री को बैंडविड्थ और मेमोरी बजट में शामिल किया जाना चाहिए, लेकिन पावर बजट में नहीं.

Production

प्रोडक्शन की अहमियत से उन लॉग एंट्री के बारे में पता चलता है जिनका इस्तेमाल Nest नेटवर्क की निगरानी और रखरखाव करने में किया जाता है.

प्रतिबंधित डिवाइसों पर, प्रोडक्शन अहमियत वाले लॉग की गई एंट्री को पावर और मेमोरी बजट में शामिल किया जाना चाहिए, क्योंकि यह उम्मीद की जाती है कि वे हमेशा डिवाइस से लॉग और ऑफ़लोड हों.

ProductionCritical

प्रोडक्शन की अहम अहमियत उन इवेंट को दिखाती है जिनका नुकसान, ग्राहक को मिलने वाली सुविधाओं पर सीधे असर डालता है.

सिस्टम में गड़बड़ी की जानकारी देने के लिए, ऐप्लिकेशन, प्रोडक्शन से जुड़े गंभीर इवेंट हार सकते हैं. प्रतिबंधित डिवाइसों पर, प्रोडक्शन के लिए ज़रूरी वैल्यू के तौर पर लॉग की गई एंट्री को, पावर और मेमोरी बजट में शामिल किया जाना चाहिए. ऐसा इसलिए किया गया है, क्योंकि यह उम्मीद की जाती है कि ये हमेशा डिवाइस से लॉग और ऑफ़लोड हों.

LoggingManagementStates

 LoggingManagementStates
प्रॉपर्टी
kLoggingManagementState_Holdoff

लॉग ऑफ़लोड पूरा हो गया है; हम होल्डऑफ़ खत्म होने तक लॉग रीस्टार्ट नहीं करते.

kLoggingManagementState_Idle

कोई लॉग ऑफ़लोड चल नहीं रहा है, लॉग ऑफ़लोड बिना किसी रुकावट के शुरू हो सकता है.

kLoggingManagementState_InProgress

लॉग ऑफ़लोड हो रहा है.

kLoggingManagementState_Shutdown

कोई लॉगिंग कार्रवाई करने में सक्षम नहीं.

टाइमस्टैंप

 TimestampType

EventOptions में शामिल टाइमस्टैंप की वैधता और टाइप.

टाइप आईडी

कमांडफ़्लैग

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

डेटा वर्शन

uint64_t DataVersion

इवेंट प्रोसेसर

void * EventProcessor

EventWriterFunct

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

यह फ़ंक्शन, इवेंट लॉगिंग सबसिस्टम के लिए eventData एलिमेंट देता है.

इस तरह के फ़ंक्शन, इवेंट लॉगिंग सबसिस्टम के लिए इवेंट डेटा एलिमेंट देते हैं. इस तरह के फ़ंक्शन कॉल किए जाते हैं. इसके लिए, इवेंट सबसिस्टम से सभी ज़रूरी इवेंट मेटाडेटा जनरेट किया जाता है. फ़ंक्शन को nl::Weave::TLV::TLVWriter ऑब्जेक्ट कहा जाता है, जिसमें यह kTag_EventData में टैग किए गए एक TLV एलिमेंट को उत्सर्जन करेगा. इसकी वैल्यू में इवेंट डेटा वाला स्ट्रक्चर होना चाहिए. इवेंट डेटा को संदर्भ टैग का इस्तेमाल करके खुद स्ट्रक्चर्ड किया जाना चाहिए.

जानकारी
पैरामीटर
[in,out] ioWriter
इवेंट डेटा क्रम से लगाने के लिए nl::Weave::TLV::TLVWriter ऑब्जेक्ट का रेफ़रंस.
[in] inDataTag
टीएलवी के लिए एक संदर्भ टैग, हम लिख रहे हैं.
[in] appData
ऐप्लिकेशन के खास संदर्भ के लिए पॉइंटर.
सामान लौटाने की वैल्यू
WEAVE_NO_ERROR
सफलता पर.
other
कॉलर को यह बताने वाली सही गड़बड़ी कि इवेंट के डेटा का क्रम पूरा नहीं किया जा सका. ioWriter को कॉल करने से जुड़ी गड़बड़ियों को फिर से मैप किए बिना लागू किया जाना चाहिए. अगर फ़ंक्शन किसी भी तरह की गड़बड़ी देता है, तो इवेंट जनरेट करना रद्द हो जाता है और इवेंट लॉग में नहीं लिखा जाता है.
यह भी देखें:
PlainTextWriter
EventWriterTLVCopy

बाहरी इवेंट फ़ेच करें

WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)

इवेंट कॉलबैक फ़ेच करने वाले प्लैटफ़ॉर्म कॉलबैक के लिए, एक फ़ंक्शन प्रोटोटाइप.

FetchEvent से मिलता-जुलता है. फ़ेच का यह फ़ंक्शन, EventLoadOutContext.mStartEventID के सभी इवेंट को ExternalEvent.mLastEventID की मदद से दिखाता है.

संदर्भ पॉइंटर फ़ेच का FetchExternalEventContext है. इसमें EventLoadOutContext शामिल है, जिसमें TLV फ़ॉर्मैट के लिए कुछ हेल्पर वैरिएबल शामिल हैं. इसमें कॉलबैक के रजिस्ट्रेशन पर बनाए गए ExternalEvent स्ट्रक्चर का पॉइंटर भी शामिल होता है. यह कॉलबैक के लिए, इवेंट आईडी की रेंज बताता है.

फ़ंक्शन से वापस लौटते समय, EventLoadOutContext.mcurrentEventID को पहले इवेंट आईडी के बारे में बताना चाहिए, जिसे TLV बफ़र में नहीं लिखा गया है. प्लैटफ़ॉर्म को इवेंट हेडर और डेटा, TLV राइटर में सही फ़ॉर्मैट में लिखना चाहिए. यह जानकारी, EventLogging प्रोटोकॉल में दी गई है. प्लैटफ़ॉर्म पर, इवेंट और टाइमस्टैंप की खासियत भी होनी चाहिए.

सभी टीएलवी गड़बड़ियों को सबसे ऊंचे लेवल पर लागू किया जाना चाहिए. उदाहरण के लिए, बफ़र में स्टोरेज खत्म होने पर, भेजा गया मैसेज ट्रिगर होगा. इसके बाद, किसी भी इवेंट आईडी वाले कॉलबैक को एक और कॉल किया जाएगा.

जानकारी
सामान लौटाने की वैल्यू
WEAVE_ERROR_NO_MEMORY
अगर इवेंट लिखने के लिए जगह नहीं है.
WEAVE_ERROR_BUFFER_TOO_SMALL
अगर इवेंट लिखने के लिए जगह नहीं है.
WEAVE_NO_ERROR
सफलता पर.
WEAVE_END_OF_TLV
सफलता पर.

जेनेरिक ट्रेटसिंककैटलॉग

GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog

जेनेरिक ट्रेटसोर्सकैटलॉग

GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog

अहमियत का प्रकार

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

लॉग एंट्री की अहमियत.

अहमियत का इस्तेमाल इवेंट को फ़िल्टर करने के लिए किया जाता है, ताकि उन्हें लॉग में वाकई शामिल किया जा सके. लॉग में इवेंट के बाद, हम उसे लॉग से मिटाने के लिए और प्रावधान नहीं करते. अहमियत के लेवल का इस्तेमाल करके, इवेंट के स्टोरेज को प्राथमिकता दी जाती है. अगर ज़्यादा अहम इवेंट में कोई इवेंट पूरी तरह से जोड़ा जाता है, तो उसकी अहमियत के हिसाब से इवेंट को इवेंट में शामिल नहीं किया जाता. वैसे भी, अहमियत के लेवल की सिर्फ़ मिलती-जुलती वैल्यू होती है. अगर कोई सिस्टम सिर्फ़ एक ज़रूरी लेवल का इस्तेमाल कर रहा है, तो इवेंट सिर्फ़ उम्र के मुताबिक ड्रॉप किए जाते हैं, जैसे कि रिंग बफ़र.

इटरेटर कॉलबैक

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

ट्रेस हैंडल इटरेटर.

LoggingBufferHandler

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

बाहरी इवेंट डिलीवर करने की सूचना दें

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

कॉलबैक का फ़ंक्शन प्रोटोटाइप तब किया जाता है, जब रिमोट इवेंट के लिए बाहरी इवेंट डिलीवर किए जाते हैं.

जब बाहरी इवेंट किसी दूर के सदस्य को डिलीवर किए जाते हैं, तो इंजन बाहरी इवेंट की सेवा देने वाली कंपनी को सूचना देगा. कॉलबैक में, डिलीवर किए गए आखिरी आईडी का इवेंट और इवेंट पाने वाले सदस्य का आईडी शामिल होता है.

जानकारी
पैरामीटर
[in] inEv
डिलीवर किए गए इवेंट के लिए बाहरी इवेंट ऑब्जेक्ट
[in] inLastDeliveredEventID
उस आखिरी इवेंट का आईडी जो सदस्य को डिलीवर किया गया.
[in] inRecipientNodeID
पाने वाले का वेव नोड आईडी

बाहरी इवेंट से जुड़ी सूचना उपलब्ध कराएं

void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)

कॉलबैक के लिए फ़ंक्शन प्रोटोटाइप तब शुरू होता है, जब बफ़र से बाहरी इवेंट निकाल दिए जाते हैं.

जब बाहरी इवेंट ऑब्जेक्ट को आउटबाउंड मैसेज बफ़र से हटा दिया जाता है, तो इंजन बाहरी इवेंट की सेवा देने वाली कंपनी को सूचना देगा. कॉलबैक में, बाहरी इवेंट को हटाया जाता है.

जानकारी
पैरामीटर
[in] inEv
बाहरी इवेंट ऑब्जेक्ट को हटाया जाएगा

प्रॉपर्टी डिक्शनरी की सुविधा

uint16_t PropertyDictionaryKey

प्रॉपर्टी पाथहैंडल

uint32_t PropertyPathHandle

PropertyPathHandle, किसी खास इंस्टेंस के रूट की तुलना में WDM पाथ का यूनीक 32-बिट अंकों वाला हैश है.

इसके दो हिस्से होते हैं:

  • कम 16-बिट संख्या, जो स्कीमा के स्थिर हिस्से में मैप होती है.
  • जहां नीचे दिए गए 16-बिट किसी डिक्शनरी एलिमेंट के अंदर के पाथ के बारे में बताते हैं, वहां एक ऊपरी 16-बिट संख्या मौजूद होती है, जो उस एलिमेंट से जुड़ी डिक्शनरी कुंजी को दिखाती है. अगर निचले 16-बिट का मतलब है, लेकिन कोई शब्दकोश नहीं है, तो ऊपर के 16-बिट 0 होने चाहिए.

कुछ विशेषताएं:

  • हर विशेषता का अपना प्रॉपर्टी पाथ हैंडल स्पेस होता है.
  • हर यूनीक डब्ल्यूडीएम सब-पाथ पाथ यूनीक प्रॉपर्टी जैसा है.
  • PropertyPathHandles को आईडीएल से किसी खास कंपाइलर से, अपने-आप जनरेट किया जाता है (फ़िलहाल, यह करने के लिए इस्तेमाल किया जाता है). साथ ही, इसे संबंधित एट्रिब्यूट और हेडर फ़ाइल में एक इन्यूमर की सूची के तौर पर दिखाया जाता है.
  • इस बिल्ड के साथ, ऐप्लिकेशन लॉजिक को कभी भी सीधे WDM पाथ से नहीं जुड़ना पड़ता. इसके बजाय, WDM के साथ उसके इंटरैक्शन खास तौर पर इन हैंडल के ज़रिए किए जाते हैं.
  • पाथ हैंडल के लिए दो रिज़र्व वैल्यू होती हैं, जिनका खास मतलब होता है:
    • 0 से यह पता चलता है कि &&33;शून्य' हैंडल
    • 1, ऐसा हैंडल दिखाता है जो एट्रिब्यूट इंस्टेंस के रूट पर ले जाता है.

प्रॉपर्टी स्कीमा हैंडल

uint16_t PropertySchemaHandle

SchemaVersion

uint16_t SchemaVersion

एकल संसाधनSinkTraitCatalog

SingleResourceTraitCatalog< TraitDataSink > SingleResourceSinkTraitCatalog

सिंगल रिसोर्ससोर्स ट्रैकिंगकैटलॉग

SingleResourceTraitCatalog< TraitDataSource > SingleResourceSourceTraitCatalog

टाइमस्टैंप

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

EventOptions में शामिल टाइमस्टैंप की वैधता और टाइप.

ट्रेस डेटा हैंडल

uint16_t TraitDataHandle

कुल समय _t

uint32_t duration_t

अवधि के बारे में बताने के लिए इस्तेमाल किया गया टाइप, मिलीसेकंड में.

event_id_t

uint32_t event_id_t

इवेंट आईडी का टाइप.

टाइमस्टैंप

uint32_t timestamp_t

इस टाइमस्टैंप का इस्तेमाल, मिलीसेकंड में टाइमस्टैंप की जानकारी देने के लिए किया जाता है.

utc_timestamp_t

uint64_t utc_timestamp_t

यूटीसी टाइमस्टैंप को मिलीसेकंड में बताने के लिए, इस्तेमाल किया जाने वाला प्रकार.

वैरिएबल

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
)

Bdxअस्वीकारहैंडलर

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

BdxSendAllowHandler

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
)

EventWriterTLV

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

हेल्पर फ़ंक्शन, जो पहले से ही क्रम से लगाए गए इवेंट डेटा एलिमेंट का इवेंट बफ़र में अनुवाद करता है.

जानकारी
पैरामीटर
[in,out] ioWriter
इवेंट लिखने के लिए इस्तेमाल किया जाने वाला लेखक
[in] inDataTag
टीएलवी के लिए एक संदर्भ टैग जिसे हम कॉपी कर रहे हैं. यहां इस्तेमाल नहीं हुआ है, लेकिन EventWriterFunct के लिए, typedef की ज़रूरत है.
[in] appData
यह TLVReader का एक पॉइंटर है जिसमें सीरियल इवेंट डेटा होता है.
सामान लौटाने की वैल्यू
WEAVE_NO_ERROR
सफलता पर.
other
ऐसी अन्य गड़बड़ियां जिन्हें ioWriter की मदद से लौटाया जा सकता है.

GetPropertyPropertyKey

PropertyDictionaryKey GetPropertyDictionaryKey(
  PropertyPathHandle aHandle
)

GetPropertySchemaHandle

PropertySchemaHandle GetPropertySchemaHandle(
  PropertyPathHandle aHandle
)

IsNullPropertyPathHandle

bool IsNullPropertyPathHandle(
  PropertyPathHandle aHandle
)

Isरूटप्रॉपर्टीपाथहैंडल

bool IsRootPropertyPathHandle(
  PropertyPathHandle aHandle
)

IsVersionNewer

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

यह वर्शन की तुलना करने के लिए एल्गोरिदम का ऑप्टिमाइज़ किया गया वर्शन है.

क्लाइंट-साइड पर, सेवा से मिला वर्शन हमेशा सबसे नया होता है.

IsVersionNewerOrEquaal

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

पता लगाएं

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

उपयोगिता फ़ंक्शन, जो TraitDataSink कैटलॉग में TraitUpdatableDataSink को ढूंढता है.

जानकारी
पैरामीटर
[in] aTraitDataHandle
देखने के लिए, सिंक को हैंडल करें.
[in] aDataSinkCatalog
खोजने के लिए कैटलॉग.
लौटाए गए सामान
TraitUpdatableDataSink का पॉइंटर; अगर हैंडल मौजूद नहीं है या वह अपडेट नहीं किए जा सकने वाले TraitDataSink पर ले जाता है, तो इसे शून्य माना जाता है.

लॉगइवेंट

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 टैग से बदल देगा.

अगर इवेंट का इंपोर्ट, LoggingConfiguration में तय की गई लॉगिंग सीमा से ज़्यादा होता है, तो उसे लॉग किया जाता है. अगर इवेंट और उसकी अहमियत मौजूदा सीमा को पूरा नहीं करती है, तो इसे छोड़ दिया जाता है. साथ ही, फ़ंक्शन, नतीजे के नतीजे के तौर पर 0 को दिखाता है.

न्योते का यह वैरिएंट, सभी डिफ़ॉल्ट इवेंट विकल्पों के बारे में बताता है:

  • इवेंट को कॉल के पॉइंट से मौजूदा समय के साथ टाइमस्टैंप किया जाता है,
  • इवेंट को कॉल करने वाले डिवाइस से जुड़ा हुआ बताया गया है,
  • इवेंट स्टैंडअलोन है, किसी दूसरे इवेंट से नहीं,
  • इवेंट को 'ज़रूरी नहीं' के तौर पर मार्क किया गया है,

जानकारी
पैरामीटर
[in] inSchema
इस इवेंट की अहमियत, प्रोफ़ाइल आईडी, और स्ट्रक्चर के टाइप के बारे में बताने वाला स्कीमा.
[in] inData
TLV रीडर, जिसमें पहले एलिमेंट के तौर पर इवेंट डेटा होता है.
लौटाए गए सामान
event_id_t वह इवेंट आईडी जो इवेंट को लॉग में लिखा गया था.

लॉगइवेंट

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 टैग से बदल देगा.

अगर इवेंट का इंपोर्ट, LoggingConfiguration में तय की गई लॉगिंग सीमा से ज़्यादा होता है, तो उसे लॉग किया जाता है. अगर इवेंट और उसकी अहमियत मौजूदा सीमा को पूरा नहीं करती है, तो इसे छोड़ दिया जाता है. साथ ही, फ़ंक्शन, नतीजे के नतीजे के तौर पर 0 को दिखाता है.

शुरू करने के इस वैरिएंट की मदद से, कॉल करने वाला (कॉलर) EventOptions का कोई भी कॉम्बिनेशन सेट कर सकता है:

  • टाइमस्टैंप, जब कॉल के समय 0 डिफ़ॉल्ट रूप से मौजूदा समय पर होता है,
  • "root" सेक्शन का इवेंट स्रोत (इवेंट स्रोत और विशेषता आईडी); अगर यह शून्य है, तो यह डिफ़ॉल्ट रूप से मौजूदा डिवाइस पर सेट होता है. इवेंट को उस डिवाइस से जुड़े के तौर पर मार्क किया गया है जिससे कॉल किया जा रहा है,
  • इवेंट आईडी को ग्रुप करने के लिए, मिलते-जुलते इवेंट आईडी; मिलते-जुलते इवेंट आईडी के शून्य होने पर, इवेंट को किसी दूसरे इवेंट से मिलता-जुलता नहीं के रूप में मार्क किया जाता है,
  • बेहद ज़रूरी; डिफ़ॉल्ट रूप से ज़रूरी नहीं है.

जानकारी
पैरामीटर
[in] inSchema
इस इवेंट की अहमियत, प्रोफ़ाइल आईडी, और स्ट्रक्चर के टाइप के बारे में बताने वाला स्कीमा.
[in] inData
TLV रीडर, जिसमें पहले एलिमेंट के तौर पर इवेंट डेटा होता है. शून्य नहीं होना चाहिए
[in] inOptions
इवेंट मेटाडेटा के विकल्प. यह शून्य हो सकता है.
लौटाए गए सामान
event_id_t वह इवेंट आईडी जो इवेंट को लॉग में लिखा गया था.

लॉगइवेंट

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

कॉलबैक के ज़रिए इवेंट को लॉग करें.

फ़ंक्शन, EventWriterFunct और ऐप्लिकेशन के हिसाब से appData संदर्भ के तौर पर दिखाए गए इवेंट को लॉग करता है. फ़ंक्शन, इवेंट मेटाडेटा लिखता है और inEventWriter को nl::Weave::TLV::TLVWriter रेफ़रंस और inAppData कॉन्टेक्स्ट के साथ कॉल करता है, ताकि उपयोगकर्ता कोड, इवेंट डेटा को सीधे इवेंट लॉग में भेज सके. इवेंट लॉग का यह तरीका मेमोरी का इस्तेमाल कम करता है, क्योंकि इवेंट डेटा को सीधे टारगेट बफ़र में क्रम से लगाया जाता है. इवेंट डेटा में, संदर्भ टैग शामिल होने चाहिए, जिन्हें inProfileID और inEventType की पहचान करने वाले स्कीमा में करना ज़रूरी हो. पहले एलिमेंट का टैग अनदेखा कर दिया जाएगा; इवेंट लॉग करने वाला सिस्टम इसे eventData टैग से बदल देगा.

अगर इवेंट का इंपोर्ट, LoggingConfiguration में तय की गई लॉगिंग सीमा से ज़्यादा होता है, तो उसे लॉग किया जाता है. अगर इवेंट और उसकी अहमियत मौजूदा सीमा को पूरा नहीं करती है, तो इसे छोड़ दिया जाता है. साथ ही, फ़ंक्शन, नतीजे के नतीजे के तौर पर 0 को दिखाता है.

न्योते का यह वैरिएंट, सभी डिफ़ॉल्ट इवेंट विकल्पों के बारे में बताता है:

  • इवेंट को कॉल के पॉइंट से मौजूदा समय के साथ टाइमस्टैंप किया जाता है,
  • इवेंट को कॉल करने वाले डिवाइस से जुड़ा हुआ बताया गया है,
  • इवेंट स्टैंडअलोन है, किसी दूसरे इवेंट से नहीं,
  • इवेंट को 'ज़रूरी नहीं' के तौर पर मार्क किया गया है,

जानकारी
पैरामीटर
[in] inSchema
इस इवेंट की अहमियत, प्रोफ़ाइल आईडी, और स्ट्रक्चर के टाइप के बारे में बताने वाला स्कीमा.
[in] inEventWriter
इवेंट डेटा को क्रम से लगाने के लिए शुरू करने वाला कॉलबैक
[in] inAppData
कॉलबैक के लिए ऐप्लिकेशन कॉन्टेक्स्ट.
लौटाए गए सामान
event_id_t वह इवेंट आईडी जो इवेंट को लॉग में लिखा गया था.

लॉगइवेंट

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

कॉलबैक के ज़रिए, किसी इवेंट को लॉग करें.

फ़ंक्शन, EventWriterFunct और ऐप्लिकेशन के हिसाब से appData संदर्भ के तौर पर दिखाए गए इवेंट को लॉग करता है. फ़ंक्शन, इवेंट मेटाडेटा लिखता है और inEventWriter को nl::Weave::TLV::TLVWriter रेफ़रंस और inAppData कॉन्टेक्स्ट के साथ कॉल करता है, ताकि उपयोगकर्ता कोड, इवेंट डेटा को सीधे इवेंट लॉग में भेज सके. इवेंट लॉग का यह तरीका मेमोरी का इस्तेमाल कम करता है, क्योंकि इवेंट डेटा को सीधे टारगेट बफ़र में क्रम से लगाया जाता है. इवेंट डेटा में, संदर्भ टैग शामिल होने चाहिए, जिन्हें inProfileID और inEventType की पहचान करने वाले स्कीमा में करना ज़रूरी हो. पहले एलिमेंट का टैग अनदेखा कर दिया जाएगा; इवेंट लॉग करने वाला सिस्टम इसे eventData टैग से बदल देगा.

अगर इवेंट का इंपोर्ट, LoggingConfiguration में तय की गई लॉगिंग सीमा से ज़्यादा होता है, तो उसे लॉग किया जाता है. अगर इवेंट और उसकी अहमियत मौजूदा सीमा को पूरा नहीं करती है, तो इसे छोड़ दिया जाता है. साथ ही, फ़ंक्शन, नतीजे के नतीजे के तौर पर 0 को दिखाता है.

शुरू करने के इस वैरिएंट की मदद से, कॉल करने वाला (कॉलर) EventOptions का कोई भी कॉम्बिनेशन सेट कर सकता है:

  • टाइमस्टैंप, जब कॉल के समय 0 डिफ़ॉल्ट रूप से मौजूदा समय पर होता है,
  • "root" सेक्शन का इवेंट स्रोत (इवेंट स्रोत और विशेषता आईडी); अगर यह शून्य है, तो यह डिफ़ॉल्ट रूप से मौजूदा डिवाइस पर सेट होता है. इवेंट को उस डिवाइस से जुड़े के तौर पर मार्क किया गया है जिससे कॉल किया जा रहा है,
  • इवेंट आईडी को ग्रुप करने के लिए, मिलते-जुलते इवेंट आईडी; मिलते-जुलते इवेंट आईडी के शून्य होने पर, इवेंट को किसी दूसरे इवेंट से मिलता-जुलता नहीं के रूप में मार्क किया जाता है,
  • बेहद ज़रूरी; डिफ़ॉल्ट रूप से ज़रूरी नहीं है.

जानकारी
पैरामीटर
[in] inSchema
इस इवेंट की अहमियत, प्रोफ़ाइल आईडी, और स्ट्रक्चर के टाइप के बारे में बताने वाला स्कीमा.
[in] inEventWriter
इवेंट डेटा को क्रम से लगाने के लिए शुरू करने वाला कॉलबैक
[in] inAppData
कॉलबैक के लिए ऐप्लिकेशन कॉन्टेक्स्ट.
[in] inOptions
इवेंट मेटाडेटा के विकल्प. यह शून्य हो सकता है.
लौटाए गए सामान
event_id_t वह इवेंट आईडी जो इवेंट को लॉग में लिखा गया था.

लॉगफ़्रीफ़ॉर्म

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

लॉगफ़्रीफ़ॉर्म, डिफ़ॉल्ट इवेंट स्ट्रीम को फ़्रीफ़ॉर्म स्ट्रिंग बनाता है.

स्ट्रिंग को डीबग इवेंट स्ट्रक्चर में एनकैप्सुलेट किया जाएगा, जो स्ट्रक्चर के साथ लॉग की गई अन्य स्ट्रिंग के जैसा होगा. इवेंट प्रोफ़ाइल आईडी, Nest डीबग इवेंट का होगा और इवेंट टाइप kNestDebug_StringLogEntryEvent होगा.

जानकारी
पैरामीटर
[in] inImportance
लॉग एंट्री की अहमियत; अगर अहमियत मौजूदा अहमियत से कम होती है, तो इवेंट असल में लॉग नहीं किया गया है
[in] inFormat
printf के फ़ॉर्मैट वाली स्ट्रिंग और उसके बाद आर्ग्युमेंट फ़ॉर्मैट किए जाने चाहिए
लौटाए गए सामान
event_id_t वह इवेंट आईडी जो इवेंट को लॉग में लिखा गया था.

LookForElementWithTag

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

प्लेन टेक्स्ट राइटर

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

फ़्रीफ़ॉर्म टेक्स्ट को डीबग इवेंट के तौर पर कार्बन उत्सर्जन करने के लिए, हेल्पर फ़ंक्शन.

डीबग इवेंट एक लॉग स्ट्रक्चर और फ़्रीफ़ॉर्म टेक्स्ट वाला स्ट्रक्चर है.

जानकारी
पैरामीटर
[in,out] ioWriter
इवेंट लिखने के लिए इस्तेमाल किया जाने वाला लेखक
[in] appData
DebugLogContext का एक पॉइंटर, जिसमें स्ट्रिंग फ़ॉर्मैट, आर्ग्युमेंट, और लॉग का क्षेत्र होता है
[in] inDataTag
टीएलवी के लिए एक संदर्भ टैग, हम लिख रहे हैं. यहां इस्तेमाल नहीं हुआ है, लेकिन EventWriterFunct के लिए, typedef की ज़रूरत है.
सामान लौटाने की वैल्यू
WEAVE_NO_ERROR
सफलता पर.
other
ऐसी अन्य गड़बड़ियां जिन्हें ioWriter की मदद से लौटाया जा सकता है.

प्लेन टेक्स्ट राइटर

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

फ़्रीफ़ॉर्म टेक्स्ट को डीबग इवेंट के तौर पर कार्बन उत्सर्जन करने के लिए, हेल्पर फ़ंक्शन.

डीबग इवेंट एक लॉग स्ट्रक्चर और फ़्रीफ़ॉर्म टेक्स्ट वाला स्ट्रक्चर है.

जानकारी
पैरामीटर
[in,out] ioWriter
इवेंट लिखने के लिए इस्तेमाल किया जाने वाला लेखक
[in] inDataTag
CANNOT TRANSLATE
[in] appData
DebugLogContext का एक पॉइंटर, जिसमें स्ट्रिंग फ़ॉर्मैट, आर्ग्युमेंट, और लॉग का क्षेत्र होता है
सामान लौटाने की वैल्यू
WEAVE_NO_ERROR
सफलता पर.
other
ioWriter की दूसरी गड़बड़ियां.

ऑपरेटर!=

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

ऑपरेटर==

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