nl::Weave::Profiles::DataManagement_Current

इस नेमस्पेस में Weave डेटा मैनेजमेंट (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
डब्ल्यूडीएम प्रोफ़ाइल के मैसेज टाइप.
@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
डीबग Trait के लिए प्रोफ़ाइल की परिभाषाएं.
@99{
  kNestDebug_StringLogEntryEvent = 1,
  kNestDebug_TokenizedLogEntryEvent = 2,
  kNestDebug_TokenizedHeaderEntryEvent = 3
}
enum
Nest Debug Trait के लिए इवेंट के टाइप.
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(*
Trait हैंडल इटरेटर.
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
प्रापर्टीPathHandle, किसी WDM पाथ का खास 32-बिट संख्यात्मक हैश होता है जो किसी Trait इंस्टेंस के रूट के मुताबिक होता है.
PropertySchemaHandle टाइपडिफ़
uint16_t
SchemaVersion टाइपडिफ़
uint16_t
SingleResourceSinkTraitCatalog टाइपडिफ़
SingleResourceSourceTraitCatalog टाइपडिफ़
TimestampType टाइपडिफ़
EventOptions में शामिल टाइमस्टैंप की वैधता और टाइप.
TraitDataHandle टाइपडिफ़
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
मिलीसेकंड में यूटीसी टाइमस्टैंप की जानकारी देने के लिए इस्तेमाल किया जाने वाला टाइप.

वैरिएबल

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, ...)
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

CircularEventBuffer पर आधारित TLVReader.

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

एक ही संसाधन को रेफ़र करने वाले Trait डेटा इंस्टेंस के कलेक्शन के लिए, Weave ने TraitCatalogBase इंटरफ़ेस को लागू किया.

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

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

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

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

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, Weave इवेंट Logging सबसिस्टम के कॉन्फ़िगर किए जा सकने वाले कॉम्पोनेंट को इनकैप्सुलेट करती है.

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

यह क्लाइंट और पब्लिशर, दोनों के लिए 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

यह ऑब्जेक्ट 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

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

नाम स्थान

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

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

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

WDM कस्टम Command रिस्पॉन्स की परिभाषा.

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

डब्ल्यूडीएम डेटा एलिमेंट की परिभाषा.

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

डब्ल्यूडीएम स्टेटस एलिमेंट की परिभाषा.

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

डब्ल्यूडीएम अपडेट अनुरोध की परिभाषा.

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

डब्ल्यूडीएम प्रोफ़ाइल के मैसेज टाइप.

ये वैल्यू, डेटा मैनेजमेंट स्पेसिफ़िकेशन में बताई गई हैं.

@105

 @105

WDM वाले स्टेटस कोड.

@147

 @147

@95

 @95

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

प्रॉपर्टी
kTag_CurrentImportance

डेटा को लॉग करने की मौजूदा अहमियत, वैल्यू को ImportanceType के टाइप के तौर पर माना जाता है.

kTag_ImportanceExpiration

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

kTag_LoggingDestination

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

kTag_MaximumLogUploadInterval

अपने-आप ट्रिगर हुए लॉग को अपलोड करने की कोशिशों के बीच का समय (सेकंड में).

kTag_MinimumLogUploadInterval

अपने-आप लॉग अपलोड करने की कोशिशों के बीच का समय (सेकंड में).

kTag_TraitLoggingImportance

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

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

@96

 @96

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

प्रॉपर्टी
kTag_LogBufferingCapacity

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

kTag_LoggingVolume

बिना हस्ताक्षर वाला 32-बिट पूर्णांक, जो केबी/दिन में अनुमानित लॉगिंग वॉल्यूम के बारे में बताता है.

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

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

@99

 @99

Nest Debug Trait के लिए इवेंट के टाइप.

प्रॉपर्टी
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
EventWriterTLV Copy

FetchExternalEventsFunct

WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)

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

FetchEvent Since की तरह ही, यह फ़ेच फ़ंक्शन, EventLoadOutContext.mStartEventID के सभी इवेंट को ExternalEvents.mLastEventID की मदद से दिखाता है.

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

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

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

जानकारी
रिटर्न वैल्यू
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)

Trait हैंडल इटरेटर.

LoggingBufferHandler

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

NotifyExternalEventsDeliveredFunct

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

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

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

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

NotifyExternalEventsEvictedFunct

void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)

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

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

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

PropertyDictionaryKey

uint16_t PropertyDictionaryKey

PropertyPathHandle

uint32_t PropertyPathHandle

प्रापर्टीPathHandle, किसी WDM पाथ का खास 32-बिट संख्यात्मक हैश होता है जो किसी Trait इंस्टेंस के रूट के मुताबिक होता है.

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

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

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

  • हर Trait का अपना प्रॉपर्टी पाथ हैंडल स्पेस होता है.
  • हर यूनीक WDM सब-पाथ पाथ में मिलता-जुलता एक खास PropertyPathHandle होगा.
  • प्रॉपर्टी पाथहैंड, IDL के Trait कंपाइलर की मदद से अपने-आप जनरेट होते हैं (अभी के लिए मैन्युअल तरीके से). साथ ही, इसे Trait की हेडर फ़ाइल में एक सूची के तौर पर दिखाया जाता है.
  • इस कंस्ट्रक्ट के साथ, ऐप्लिकेशन लॉजिक को कभी भी सीधे WDM पाथ से निपटने की ज़रूरत नहीं होती. इसके बजाय, WDM के साथ उनके इंटरैक्शन खास तौर पर इन हैंडल के ज़रिए किए जाते हैं.
  • खास मतलब वाले पाथ हैंडल के लिए, दो वैल्यू रिज़र्व की गई हैं:
    • 0 का मतलब है कि वैल्यू 'शून्य' है हैंडल
    • 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

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

वैरिएबल

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
)

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

जानकारी
पैरामीटर
[in,out] ioWriter
इवेंट के बारे में लिखने के लिए लेखक का नाम
[in] inDataTag
उस TLV के लिए कॉन्टेक्स्ट टैग जिसे हम कॉपी कर रहे हैं. यहां इस्तेमाल नहीं किया गया है, लेकिन EventWriterFunct के लिए typedef के लिए ज़रूरी है.
[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
)

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

जानकारी
पैरामीटर
[in] aTraitDataHandle
खोजने के लिए सिंक का हैंडल.
[in] aDataSinkCatalog
खोजने के लिए कैटलॉग.
लौटाए जाने वाले प्रॉडक्ट
TraitUpdatableDataSink का पॉइंटर; अगर हैंडल मौजूद नहीं है या यह अपडेट नहीं किए जा सकने वाले 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 टैग से बदल देगा.

इवेंट को तब लॉग किया जाता है, जब उसका महत्व 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 टैग से बदल देगा.

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

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

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

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

LogEvent

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 अगर इवेंट को लॉग में लिखा गया है, तो इवेंट आईडी 0 होता है.

LogEvent

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 डिफ़ॉल्ट रूप से कॉल के मौजूदा समय पर सेट होता है,
  • "रूट" इवेंट सोर्स का सेक्शन (इवेंट सोर्स और Trait ID); अगर शून्य है, तो यह मौजूदा डिवाइस को डिफ़ॉल्ट तौर पर सेट करती है. इवेंट को कॉल कर रहे डिवाइस से संबंधित के तौर पर मार्क किया गया है,
  • इवेंट आईडी के ग्रुप बनाने के लिए, मिलता-जुलता इवेंट आईडी; जब संबंधित इवेंट आईडी 0 होता है, तो इवेंट को 'किसी दूसरे इवेंट से मिलता-जुलता नहीं है' के तौर पर मार्क किया जाता है,
  • तात्कालिकता; डिफ़ॉल्ट रूप से गैर-ज़रूरी है.

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

LogFreeform

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

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

स्ट्रिंग को डीबग इवेंट स्ट्रक्चर में एनकैप्सुलेट किया जाएगा. स्ट्रक्चर के तौर पर, यह स्ट्रिंग लॉग की गई अन्य स्ट्रिंग की तरह होती है. इवेंट प्रोफ़ाइल आईडी, Nest डीबग इवेंट का होगा और इवेंट का टाइप 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 हम लिख रहे हैं उसके लिए एक संदर्भ टैग. यहां इस्तेमाल नहीं किया गया है, लेकिन EventWriterFunct के लिए typedef के लिए ज़रूरी है.
रिटर्न वैल्यू
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 से मिल सकती हैं.

operator!=

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

ऑपरेटर==

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