nl:: Weave:: Profiles:: DataManagement_Current
Không gian tên này bao gồm tất cả giao diện trong cấu hình Weave for Weave Data Management (WDM) hiện được hỗ trợ để sử dụng chính thức.
Tóm tắt
Typedef |
|
---|---|
CommandFlags
|
typedef |
DataVersion
|
typedefuint64_t
|
EventProcessor
|
typedefvoid *
|
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData)
|
typedef Một hàm cung cấp phần tử eventData cho hệ thống con ghi nhật ký sự kiện. |
FetchExternalEventsFunct)(EventLoadOutContext *aContext)
|
typedef Nguyên mẫu hàm cho các lệnh gọi lại nền tảng tìm nạp dữ liệu sự kiện. |
GenericTraitSinkCatalog
|
typedef |
GenericTraitSourceCatalog
|
typedef |
ImportanceType
|
typedef Tầm quan trọng của mục nhập nhật ký. |
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)
|
typedefvoid(*
Biến lặp xử lý truy vấn. |
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)
|
typedef |
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)
|
typedefvoid(*
Nguyên mẫu hàm cho lệnh gọi lại được gọi khi các sự kiện bên ngoài được gửi đến người đăng ký từ xa. |
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)
|
typedefvoid(*
Nguyên mẫu hàm cho lệnh gọi lại được gọi khi các sự kiện bên ngoài bị loại khỏi vùng đệm. |
PropertyDictionaryKey
|
typedefuint16_t
|
PropertyPathHandle
|
typedefuint32_t
PropertyPathHandle là một hàm băm số 32 bit duy nhất của một đường dẫn WDM tương ứng với gốc của một thực thể trait. |
PropertySchemaHandle
|
typedefuint16_t
|
SchemaVersion
|
typedefuint16_t
|
SingleResourceSinkTraitCatalog
|
typedef |
SingleResourceSourceTraitCatalog
|
typedef |
TimestampType
|
typedef Tính hợp lệ và loại dấu thời gian được đưa vào EventOptions. |
TraitDataHandle
|
typedefuint16_t
|
duration_t
|
nl::Weave::Profiles::DataManagement_Current::duration_tuint32_t
Loại dùng để mô tả thời lượng, tính bằng mili giây. |
event_id_t
|
nl::Weave::Profiles::DataManagement_Current::event_id_tuint32_t
Loại mã sự kiện. |
timestamp_t
|
nl::Weave::Profiles::DataManagement_Current::timestamp_tuint32_t
Loại dùng để mô tả dấu thời gian tính bằng mili giây. |
utc_timestamp_t
|
nl::Weave::Profiles::DataManagement_Current::utc_timestamp_tuint64_t
Loại dùng để mô tả dấu thời gian UTC tính bằng mili giây. |
Biến |
|
---|---|
sInstance
|
|
sLogFileName = "topazlog"[]
|
char
|
Hàm |
|
---|---|
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)
|
Một hàm trợ giúp giúp chuyển đổi một phần tử dữ liệu sự kiện đã chuyển đổi tuần tự vào vùng đệm sự kiện.
|
GetPropertyDictionaryKey(PropertyPathHandle aHandle)
|
PropertyDictionaryKey
|
GetPropertySchemaHandle(PropertyPathHandle aHandle)
|
PropertySchemaHandle
|
IsNullPropertyPathHandle(PropertyPathHandle aHandle)
|
bool
|
IsRootPropertyPathHandle(PropertyPathHandle aHandle)
|
bool
|
IsVersionNewer(const DataVersion & aVersion, const DataVersion & aReference)
|
bool
Đây là phương pháp triển khai thuật toán được tối ưu hoá để so sánh các phiên bản.
|
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
|
bool
|
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
|
Hàm hiệu dụng giúp tìm một TraitUpdatableDataSink trong danh mục TraitDataSink.
|
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData)
|
Ghi lại một sự kiện từ dạng chuyển đổi tuần tự trước.
|
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions)
|
Ghi lại một sự kiện từ biểu mẫu được chuyển đổi tuần tự trước, với các tùy chọn bổ sung.
|
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData)
|
Ghi lại một sự kiện thông qua lệnh gọi lại.
|
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
|
Ghi lại một sự kiện thông qua lệnh gọi lại, với các tuỳ chọn.
|
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
|
LogFreeform phát một chuỗi dạng tự do tới luồng sự kiện mặc định.
|
LookForElementWithTag(const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader)
|
|
PlainTextWriter(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
|
Một hàm trợ giúp để phát văn bản dạng tự do dưới dạng sự kiện gỡ lỗi.
|
PlainTextWriter(::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
|
Một hàm trợ giúp để phát văn bản dạng tự do dưới dạng sự kiện gỡ lỗi.
|
operator!=(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
|
bool
|
operator==(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
|
bool
|
Liên đoàn |
|
---|---|
nl:: |
Hợp nhất cung cấp một hệ thống đặt ứng dụng hoặc dấu thời gian UTC. |
Liệt kê
@100
@100
Các thẻ cho kNestDebug_StringLogEntryEvent.
Thuộc tính | |
---|---|
kTag_Message
|
Một chuỗi chứa thông báo gỡ lỗi thực tế. |
kTag_Region
|
Mã 32 bit không dấu cho biết vùng nhật ký, tức là mô-đun mà thông điệp nhật ký liên quan đến. |
@101
@101
Các thẻ cho kNestDebug_TokenizedLogEntryEvent.
Thuộc tính | |
---|---|
kTag_Args
|
Một mảng các đối số cần được gửi cùng với thông báo mã thông báo. |
kTag_Token
|
Một giá trị 32 bit chưa ký tương ứng với mã thông báo. |
@102
@102
Thẻ cho các sự kiện duy trì.
@104
@104
Loại thông báo trong hồ sơ WDM.
Các giá trị này được gọi trong quy cách quản lý dữ liệu.
@105
@105
Mã trạng thái dành riêng cho WDM.
@147
@147
@95
@95
Thẻ Cài đặt ghi nhật ký.
Thuộc tính | |
---|---|
kTag_CurrentImportance
|
Tầm quan trọng hiện tại của việc ghi nhật ký, giá trị thuộc loại VitalsType. |
kTag_ImportanceExpiration
|
Thời gian (tính theo giây UTC) khi chế độ cài đặt ghi nhật ký nâng cao hiện tại chuyển về giá trị mặc định. |
kTag_LoggingDestination
|
URL cho biết đích đến của tệp tải lên nhật ký. |
kTag_MaximumLogUploadInterval
|
Thời lượng tối đa, tính bằng giây, giữa các lần tải nhật ký lên được kích hoạt tự động. |
kTag_MinimumLogUploadInterval
|
Thời lượng tối thiểu, tính bằng giây, giữa các lần tải nhật ký lên được kích hoạt tự động. |
kTag_TraitLoggingImportance
|
Một mảng không bắt buộc liên kết có chọn lọc các hồ sơ được chọn lên cấp độ ghi nhật ký cao hơn. Mỗi phần tử trong mảng có một dạng (hồ sơ,đường dẫn,nhật ký quan trọng) để nâng cao một cách có chọn lọc việc ghi nhật ký từ một tập hợp con của hệ thống. Mức độ ưu tiên nâng cao của việc ghi nhật ký hồ sơ chỉ có ý nghĩa khi mức độ ưu tiên ghi nhật ký vượt quá Mức độ quan trọng hiện tại và có thời gian hết hạn giống như Mức độ quan trọng hiện tại. |
@96
@96
Các thẻ để ghi nhật ký.
Thuộc tính | |
---|---|
kTag_LogBufferingCapacity
|
Số nguyên chưa ký 32 bit mô tả khả năng lưu nhật ký lưu vào bộ đệm tính bằng kB. |
kTag_LoggingVolume
|
Số nguyên 32 bit chưa ký mô tả khối lượng ghi nhật ký dự kiến tính bằng kB/ngày. |
kTag_SupportedLogTransports
|
Một loạt cơ chế truyền tải nhật ký được hỗ trợ. |
kTag_SupportsNonVolatileStorage
|
Giá trị boolean cho biết thiết bị có hỗ trợ tính năng lưu trữ nhật ký bất biến hay không. |
kTag_SupportsPerTraitVerbosity
|
Giá trị boolean cho biết thiết bị có hỗ trợ chế độ cài đặt về độ chi tiết theo từng đoạn hay không. |
kTag_SupportsStreaming
|
Giá trị boolean cho biết thiết bị có hỗ trợ truyền trực tuyến nhật ký hay không. |
@97
@97
Thẻ cho siêu dữ liệu sự kiện.
Để biết ngữ nghĩa đầy đủ của các giá trị thẻ, hãy xem Thông số kỹ thuật thiết kế sự kiện.
Thuộc tính | |
---|---|
kTag_EventData
|
Không bắt buộc. Chính dữ liệu sự kiện. Nếu trống, hệ thống sẽ mặc định thiết lập cấu trúc trống. |
kTag_EventDeltaSystemTime
|
Thẻ nội bộ WDM, chênh lệch thời gian so với sự kiện trước đó trong quá trình mã hoá. |
kTag_EventDeltaUTCTime
|
Thẻ nội bộ WDM, chênh lệch thời gian so với sự kiện trước đó trong quá trình mã hoá. |
kTag_EventID
|
Số thứ tự của sự kiện, được biểu thị dưới dạng số lượng 64 bit chưa ký. Phải theo tuần tự, các điểm nhảy trong trình tự biểu thị các khoảng trống sự kiện. |
kTag_EventImportance
|
Tầm quan trọng của sự kiện. |
kTag_EventResourceID
|
Không bắt buộc. Giá trị là mã nhận dạng của tài nguyên mà sự kiện liên quan đến. Khi bị bỏ qua, giá trị này giống với giá trị của kTag_EventSource |
kTag_EventSource
|
Mã NodeID của thiết bị đã tạo ra sự kiện. |
kTag_EventSystemTimestamp
|
Không bắt buộc. Dấu thời gian hệ thống của sự kiện tính bằng mili giây. |
kTag_EventTraitInstanceID
|
Phiên bản không bắt buộc của đặc điểm đã tạo ra sự kiện. |
kTag_EventTraitProfileID
|
Bắt buộc. Số nguyên 32 bit chưa ký bằng với ProfileID của đặc điểm. |
kTag_EventType
|
Bắt buộc. Số nguyên 16 bit chưa ký bằng wdl.event.id cho loại sự kiện này. |
kTag_EventUTCTimestamp
|
Không bắt buộc. Dấu thời gian UTC của sự kiện tính bằng mili giây. |
kTag_ExternalEventStructure
|
Thẻ nội bộ cho các sự kiện bên ngoài. Tuyệt đối không được truyền qua dây và không được sử dụng bên ngoài thư viện Weave. |
kTag_RelatedEventID
|
Không bắt buộc. Mã của một sự kiện có liên quan đến sự kiện này. Nếu bỏ qua, giá trị này bằng giá trị của kTag_EventID. |
kTag_RelatedEventImportance
|
Không bắt buộc. Tầm quan trọng của sự kiện liên quan. Nếu bạn bỏ qua, giá trị này bằng giá trị của kTag_EventWarning. |
@98
@98
Định nghĩa hồ sơ cho tính năng gỡ lỗi.
@99
@99
Các loại sự kiện cho đặc điểm Gỡ lỗi Nest.
Thuộc tính | |
---|---|
kNestDebug_StringLogEntryEvent
|
Sự kiện cho thông báo gỡ lỗi chuỗi dạng tự do. |
kNestDebug_TokenizedHeaderEntryEvent
|
Một sự kiện để truyền tải thông tin tiêu đề được mã hoá kỹ thuật số. |
kNestDebug_TokenizedLogEntryEvent
|
Một sự kiện cho thông báo gỡ lỗi được mã hoá kỹ thuật số. |
CommandFlags
CommandFlags
Thuộc tính | |
---|---|
kCommandFlag_ActionTimeValid
|
Đặt thời gian hành động hợp lệ. |
kCommandFlag_ExpiryTimeValid
|
Thiết lập khi thời gian hết hạn hợp lệ. |
kCommandFlag_InitiationTimeValid
|
Thiết lập khi thời gian khởi tạo hợp lệ. |
kCommandFlag_IsOneWay
|
Thiết lập khi lệnh là một chiều. |
kCommandFlag_MustBeVersionValid
|
Đặt thời điểm trường phiên bản hợp lệ. |
ImportanceType
ImportanceType
Tầm quan trọng của mục nhập nhật ký.
Tầm quan trọng được dùng làm cách lọc các sự kiện trước khi các sự kiện đó thực sự được phát vào nhật ký. Sau khi sự kiện được ghi vào nhật ký, chúng tôi không đưa ra điều khoản nào khác để xoá sự kiện đó khỏi nhật ký. Mức độ quan trọng được phân phát để ưu tiên việc lưu trữ sự kiện. Nếu một sự kiện có tầm quan trọng cao được thêm vào một vùng đệm đầy đủ, thì các sự kiện sẽ bị loại bỏ theo thứ tự mức độ quan trọng (và độ tuổi) để đáp ứng. Do đó, mức độ quan trọng chỉ có giá trị tương đối. Nếu hệ thống chỉ sử dụng một mức độ quan trọng, thì các sự kiện sẽ chỉ bị loại bỏ theo thứ tự tuổi, chẳng hạn như vùng đệm đổ chuông.
Thuộc tính | |
---|---|
Debug
|
Tầm quan trọng của việc gỡ lỗi biểu thị các mục nhập nhật ký mà nhà phát triển hệ thống quan tâm và được dùng chủ yếu trong giai đoạn phát triển. Nhật ký quan trọng của hoạt động gỡ lỗi không được tính trong hạn mức băng thông hoặc hạn mức năng lượng của thiết bị bị hạn chế; do đó, bạn chỉ được sử dụng chúng trong một khoảng thời gian giới hạn trong hệ thống sản xuất. |
Info
|
Tầm quan trọng của thông tin biểu thị các mục nhập nhật ký cung cấp thông tin chi tiết và chẩn đoán bổ sung cho hệ thống đang chạy. Cấp ghi nhật ký thông tin có thể được dùng trong một khoảng thời gian dài trong hệ thống sản xuất hoặc có thể dùng làm cấp độ nhật ký mặc định trong thử nghiệm thực địa. Trên các thiết bị bị hạn chế, các mục nhập được ghi nhật ký ở cấp độ Thông tin phải được tính trong ngân sách băng thông và bộ nhớ, nhưng không được tính trong ngân sách nguồn điện. |
Production
|
Tầm quan trọng trong quá trình sản xuất biểu thị các mục nhập nhật ký được dùng trong quá trình giám sát và bảo trì liên tục của hệ sinh thái Nest. Trên các thiết bị bị hạn chế, các mục nhập được ghi lại có tầm quan trọng trong quá trình sản xuất phải được tính đến trong nguồn pin và ngân sách bộ nhớ, vì thường thì các mục này sẽ luôn được ghi lại và giảm tải từ thiết bị. |
ProductionCritical
|
Tầm quan trọng trong quá trình sản xuất biểu thị những sự kiện mà sự kiện bị mất sẽ ảnh hưởng trực tiếp đến các tính năng dành cho khách hàng. Các ứng dụng có thể lấy mất các sự kiện Quan trọng về sản xuất để cho biết lỗi hệ thống. Trên các thiết bị bị hạn chế, các mục nhập được ghi lại có tầm quan trọng chính thức trong quá trình sản xuất phải được tính đến trong hạn mức nguồn và bộ nhớ, vì thường thì các mục này sẽ luôn được ghi nhật ký và giảm tải từ thiết bị. |
LoggingManagementStates
LoggingManagementStates
Thuộc tính | |
---|---|
kLoggingManagementState_Holdoff
|
Đã hoàn tất tải nhật ký; chúng tôi sẽ không khởi động lại nhật ký cho đến khi thời gian tạm ngưng hết hạn. |
kLoggingManagementState_Idle
|
Không có quá trình giảm tải nhật ký nào đang diễn ra, có thể bắt đầu giảm tải nhật ký mà không có bất kỳ hạn chế nào. |
kLoggingManagementState_InProgress
|
Đang ghi nhật ký giảm tải. |
kLoggingManagementState_Shutdown
|
Không thể thực hiện bất kỳ thao tác ghi nhật ký nào. |
Typedef
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)
Một hàm cung cấp phần tử eventData cho hệ thống con ghi nhật ký sự kiện.
Các hàm thuộc loại này được dự kiến sẽ cung cấp phần tử eventData cho hệ thống con ghi nhật ký sự kiện. Các hàm thuộc loại này được gọi sau khi hệ thống con sự kiện đã tạo tất cả siêu dữ liệu sự kiện bắt buộc. Hàm được gọi bằng đối tượng nl::Weave::TLV::TLVWriter mà vào đó, hàm sẽ phát ra một phần tử TLV duy nhất được gắn thẻ kTag_EventData; giá trị của phần tử đó PHẢI là cấu trúc chứa dữ liệu sự kiện. Dữ liệu sự kiện phải được cấu trúc bằng thẻ ngữ cảnh.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
||||||
Giá trị trả về |
|
PlainTextWriter
EventWriterTLVCopy
FetchExternalEventsFunct
WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)
Nguyên mẫu hàm cho các lệnh gọi lại nền tảng tìm nạp dữ liệu sự kiện.
Tương tự như FetchEventsSince, hàm tìm nạp này trả về tất cả sự kiện từ EventLoadOutContext.mAppearanceEventID thông qua ExternalEvents.mLastEventID.
Con trỏ ngữ cảnh thuộc loại FetchExternalEventsContext. Bao gồm cả EventLoadOutContext, với một số biến trợ giúp cho định dạng TLV. Lệnh này cũng bao gồm một con trỏ đến cấu trúc ExternalEvents (Sự kiện bên ngoài) được tạo khi đăng ký lệnh gọi lại. Thao tác này chỉ định phạm vi mã sự kiện cho lệnh gọi lại.
Khi trả về từ hàm, EventLoadOutContext.mCurrentEventID sẽ phản ánh mã sự kiện đầu tiên chưa được ghi thành công vào vùng đệm TLV. Nền tảng phải ghi tiêu đề và dữ liệu sự kiện vào trình ghi TLV theo đúng định dạng, do giao thức EventLogging chỉ định. Nền tảng này cũng phải duy trì tính riêng biệt của các sự kiện và dấu thời gian.
Bạn nên truyền tất cả các lỗi TLV lên các cấp cao hơn. Ví dụ: hết dung lượng trong vùng đệm sẽ kích hoạt một thông báo đã gửi, sau đó là một lệnh gọi khác đến lệnh gọi lại với mã sự kiện còn lại.
Chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Giá trị trả về |
|
GenericTraitSinkCatalog
GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog
GenericTraitSourceCatalog
GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog
ImportanceType
enum nl::Weave::Profiles::DataManagement_Current::ImportanceType ImportanceType
Tầm quan trọng của mục nhập nhật ký.
Tầm quan trọng được dùng làm cách lọc các sự kiện trước khi các sự kiện đó thực sự được phát vào nhật ký. Sau khi sự kiện được ghi vào nhật ký, chúng tôi không đưa ra điều khoản nào khác để xoá sự kiện đó khỏi nhật ký. Mức độ quan trọng được phân phát để ưu tiên việc lưu trữ sự kiện. Nếu một sự kiện có tầm quan trọng cao được thêm vào một vùng đệm đầy đủ, thì các sự kiện sẽ bị loại bỏ theo thứ tự mức độ quan trọng (và độ tuổi) để đáp ứng. Do đó, mức độ quan trọng chỉ có giá trị tương đối. Nếu hệ thống chỉ sử dụng một mức độ quan trọng, thì các sự kiện sẽ chỉ bị loại bỏ theo thứ tự tuổi, chẳng hạn như vùng đệm đổ chuông.
IteratorCallback
void(* IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)
Biến lặp xử lý truy vấn.
LoggingBufferHandler
WEAVE_ERROR(* LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)
NotifyExternalEventsDeliveredFunct
void(* NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)
Nguyên mẫu hàm cho lệnh gọi lại được gọi khi các sự kiện bên ngoài được gửi đến người đăng ký từ xa.
Khi sự kiện bên ngoài được gửi đến một người đăng ký từ xa, công cụ sẽ gửi một thông báo cho nhà cung cấp sự kiện bên ngoài. Lệnh gọi lại chứa sự kiện của mã nhận dạng gần đây nhất được gửi và mã nhận dạng của người đăng ký đã nhận được sự kiện.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
NotifyExternalEventsEvictedFunct
void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)
Nguyên mẫu hàm cho lệnh gọi lại được gọi khi các sự kiện bên ngoài bị loại khỏi vùng đệm.
Khi đối tượng sự kiện bên ngoài bị loại khỏi vùng đệm thông báo đi, công cụ sẽ cung cấp thông báo cho trình cung cấp sự kiện bên ngoài. Lệnh gọi lại chứa sự kiện bên ngoài cần loại bỏ.
Chi tiết | |||
---|---|---|---|
Tham số |
|
PropertyDictionaryKey
uint16_t PropertyDictionaryKey
PropertyPathHandle
uint32_t PropertyPathHandle
PropertyPathHandle là một hàm băm số 32 bit duy nhất của một đường dẫn WDM tương ứng với gốc của một thực thể trait.
Nó có hai phần:
- Số 16 bit thấp hơn ánh xạ đến phần tĩnh của giản đồ.
- Trong trường hợp số 16 bit dưới tham chiếu đến một đường dẫn trong phần tử từ điển, thì số 16 bit trên sẽ hiện diện đại diện cho khoá từ điển được liên kết với phần tử đó. Nếu 16 bit dưới tham chiếu đến một phần tử không có từ điển thì 16 bit trên phải bằng 0.
Một số đặc điểm:
- Mỗi trait đều có không gian xử lý đường dẫn thuộc tính riêng.
- Mọi đường dẫn đường dẫn phụ WDM riêng biệt sẽ có một PropertyPathHandle duy nhất tương tự.
- PropertyPathHandles được trình biên dịch trait tạo tự động (hiện đang thực hiện thủ công) từ IDL và được biểu thị dưới dạng danh sách liệt kê trong tệp tiêu đề của đặc điểm tương ứng.
- Với cấu trúc này, logic ứng dụng không bao giờ phải xử lý trực tiếp các đường dẫn WDM. Thay vào đó, hoạt động tương tác giữa họ với WDM chỉ được thực hiện thông qua những tên người dùng này.
- Có hai giá trị dành riêng cho các ô điều khiển đường dẫn có ý nghĩa cụ thể:
- 0 biểu thị giá trị 'NULL' tên người dùng
- 1 cho biết một tên người dùng trỏ đến gốc của thực thể 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
Tính hợp lệ và loại dấu thời gian được đưa vào EventOptions.
TraitDataHandle
uint16_t TraitDataHandle
duration_t
uint32_t duration_t
Loại dùng để mô tả thời lượng, tính bằng mili giây.
event_id_t
uint32_t event_id_t
Loại mã sự kiện.
timestamp_t
uint32_t timestamp_t
Loại dùng để mô tả dấu thời gian tính bằng mili giây.
utc_timestamp_t
uint64_t utc_timestamp_t
Loại dùng để mô tả dấu thời gian UTC tính bằng mili giây.
Biến
sInstance
LoggingManagement sInstance
sLogFileName
char sLogFileName[] = "topazlog"
Hàm
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 )
Một hàm trợ giúp giúp chuyển đổi một phần tử dữ liệu sự kiện đã chuyển đổi tuần tự vào vùng đệm sự kiện.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
||||||
Giá trị trả về |
|
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 )
Đây là phương pháp triển khai thuật toán được tối ưu hoá để so sánh các phiên bản.
Ở phía máy khách, phiên bản nhận được từ dịch vụ luôn là phiên bản mới nhất.
IsVersionNewerOrEqual
bool IsVersionNewerOrEqual( const DataVersion & aVersion, const DataVersion & aReference )
Định vị
TraitUpdatableDataSink * Locate( TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog )
Hàm hiệu dụng giúp tìm một TraitUpdatableDataSink trong danh mục TraitDataSink.
Chi tiết | |||||
---|---|---|---|---|---|
Tham số |
|
||||
Trả về |
Con trỏ đến TraitUpdatableDataSink; Giá trị NULL nếu ô điều khiển không tồn tại hoặc trỏ đến một TraitDataSink không thể cập nhật.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData )
Ghi lại một sự kiện từ dạng chuyển đổi tuần tự trước.
Hàm này ghi lại một sự kiện được biểu thị dưới dạng nl::Weave::TLV::TLVReader. Điều này có nghĩa là nội dung trình bày dữ liệu sự kiện đã được chuyển đổi tuần tự trong bộ nhớ cơ bản là nl::Weave::TLV::TLVReader. nl::Weave::TLV::TLVReader dự kiến sẽ chứa ít nhất một phần tử dữ liệu duy nhất, phần tử đó phải là một cấu trúc. Phần tử đầu tiên được đọc ra khỏi trình đọc được coi là dữ liệu sự kiện và được lưu trữ trong nhật ký sự kiện. Dữ liệu sự kiện PHẢI chứa các thẻ ngữ cảnh cần được diễn giải trong giản đồ được xác định bởi inProfileID và inEventType. Thẻ của phần tử đầu tiên sẽ bị bỏ qua; hệ thống ghi nhật ký sự kiện sẽ thay thế bằng thẻ eventData.
Sự kiện được ghi lại nếu Mức độ quan trọng của sự kiện đó vượt quá ngưỡng ghi nhật ký được chỉ định trong LoggingConfiguration. Nếu tầm quan trọng của sự kiện không đáp ứng ngưỡng hiện tại, thì sự kiện đó sẽ bị loại bỏ và hàm trả về 0
dưới dạng mã sự kiện thu được.
Biến thể này của lệnh gọi ngầm chỉ định tất cả các tuỳ chọn sự kiện mặc định:
- sự kiện được đánh dấu thời gian cùng với thời gian hiện tại tại thời điểm diễn ra cuộc gọi,
- sự kiện được đánh dấu là có liên quan đến thiết bị đang thực hiện cuộc gọi,
- sự kiện có tính độc lập, không liên quan đến bất kỳ sự kiện nào khác,
- sự kiện được đánh dấu là không khẩn cấp,
Chi tiết | |||||
---|---|---|---|---|---|
Tham số |
|
||||
Trả về |
event_id_t Mã sự kiện nếu sự kiện đó được ghi vào nhật ký, nếu không thì là 0.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions )
Ghi lại một sự kiện từ biểu mẫu được chuyển đổi tuần tự trước, với các tùy chọn bổ sung.
Hàm này ghi lại một sự kiện được biểu thị dưới dạng nl::Weave::TLV::TLVReader. Điều này có nghĩa là nội dung trình bày dữ liệu sự kiện đã được chuyển đổi tuần tự trong bộ nhớ cơ bản là nl::Weave::TLV::TLVReader. nl::Weave::TLV::TLVReader dự kiến sẽ chứa ít nhất một phần tử dữ liệu duy nhất, phần tử đó phải là một cấu trúc. Phần tử đầu tiên được đọc ra khỏi trình đọc được coi là dữ liệu sự kiện và được lưu trữ trong nhật ký sự kiện. Dữ liệu sự kiện PHẢI chứa các thẻ ngữ cảnh cần được diễn giải trong giản đồ được xác định bởi inProfileID và inEventType. Thẻ của phần tử đầu tiên sẽ bị bỏ qua; hệ thống ghi nhật ký sự kiện sẽ thay thế bằng thẻ eventData.
Sự kiện được ghi lại nếu Mức độ quan trọng của sự kiện đó vượt quá ngưỡng ghi nhật ký được chỉ định trong LoggingConfiguration. Nếu tầm quan trọng của sự kiện không đáp ứng ngưỡng hiện tại, thì sự kiện đó sẽ bị loại bỏ và hàm trả về 0
dưới dạng mã sự kiện thu được.
Biến thể này của lệnh gọi cho phép phương thức gọi đặt bất kỳ tổ hợp EventOptions
nào:
- dấu thời gian, khi giá trị mặc định là 0 thành thời gian hiện tại tại thời điểm thực hiện lệnh gọi,
- "gốc" phần của nguồn sự kiện (nguồn sự kiện và mã trait); nếu giá trị NULL, thì thuộc tính mặc định sẽ trở thành thiết bị hiện tại. sự kiện được đánh dấu là có liên quan đến thiết bị đang thực hiện cuộc gọi,
- một mã sự kiện có liên quan để nhóm mã sự kiện; khi mã sự kiện có liên quan là 0, sự kiện đó sẽ được đánh dấu là không liên quan đến bất kỳ sự kiện nào khác,
- tính cấp bách; theo mặc định là không khẩn cấp.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
||||||
Trả về |
event_id_t Mã sự kiện nếu sự kiện đó được ghi vào nhật ký, nếu không thì là 0.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData )
Ghi lại một sự kiện thông qua lệnh gọi lại.
Hàm này ghi lại một sự kiện được biểu thị dưới dạng EventWriterFunct và ngữ cảnh appData
dành riêng cho ứng dụng. Hàm này ghi siêu dữ liệu sự kiện và gọi inEventWriter
với tham chiếu nl::Weave::TLV::TLVWriter và ngữ cảnh inAppData
để mã người dùng có thể phát trực tiếp dữ liệu sự kiện vào nhật ký sự kiện. Hình thức ghi nhật ký sự kiện này giúp giảm thiểu mức sử dụng bộ nhớ, vì dữ liệu sự kiện được chuyển đổi tuần tự trực tiếp vào vùng đệm đích. Dữ liệu sự kiện PHẢI chứa các thẻ ngữ cảnh cần được diễn giải trong giản đồ do inProfileID
và inEventType
xác định. Thẻ của phần tử đầu tiên sẽ bị bỏ qua; hệ thống ghi nhật ký sự kiện sẽ thay thế bằng thẻ eventData.
Sự kiện được ghi lại nếu Mức độ quan trọng của sự kiện đó vượt quá ngưỡng ghi nhật ký được chỉ định trong LoggingConfiguration. Nếu tầm quan trọng của sự kiện không đáp ứng ngưỡng hiện tại, thì sự kiện đó sẽ bị loại bỏ và hàm trả về 0
dưới dạng mã sự kiện thu được.
Biến thể này của lệnh gọi ngầm chỉ định tất cả các tuỳ chọn sự kiện mặc định:
- sự kiện được đánh dấu thời gian cùng với thời gian hiện tại tại thời điểm diễn ra cuộc gọi,
- sự kiện được đánh dấu là có liên quan đến thiết bị đang thực hiện cuộc gọi,
- sự kiện có tính độc lập, không liên quan đến bất kỳ sự kiện nào khác,
- sự kiện được đánh dấu là không khẩn cấp,
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
||||||
Trả về |
event_id_t Mã sự kiện nếu sự kiện đó được ghi vào nhật ký, nếu không thì là 0.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions )
Ghi lại một sự kiện thông qua lệnh gọi lại, với các tuỳ chọn.
Hàm này ghi lại một sự kiện được biểu thị dưới dạng EventWriterFunct và ngữ cảnh appData
dành riêng cho ứng dụng. Hàm này ghi siêu dữ liệu sự kiện và gọi inEventWriter
với tham chiếu nl::Weave::TLV::TLVWriter và ngữ cảnh inAppData
để mã người dùng có thể phát trực tiếp dữ liệu sự kiện vào nhật ký sự kiện. Hình thức ghi nhật ký sự kiện này giúp giảm thiểu mức sử dụng bộ nhớ, vì dữ liệu sự kiện được chuyển đổi tuần tự trực tiếp vào vùng đệm đích. Dữ liệu sự kiện PHẢI chứa các thẻ ngữ cảnh cần được diễn giải trong giản đồ do inProfileID
và inEventType
xác định. Thẻ của phần tử đầu tiên sẽ bị bỏ qua; hệ thống ghi nhật ký sự kiện sẽ thay thế bằng thẻ eventData.
Sự kiện được ghi lại nếu Mức độ quan trọng của sự kiện đó vượt quá ngưỡng ghi nhật ký được chỉ định trong LoggingConfiguration. Nếu tầm quan trọng của sự kiện không đáp ứng ngưỡng hiện tại, thì sự kiện đó sẽ bị loại bỏ và hàm trả về 0
dưới dạng mã sự kiện thu được.
Biến thể này của lệnh gọi cho phép phương thức gọi đặt bất kỳ tổ hợp EventOptions
nào:
- dấu thời gian, khi giá trị mặc định là 0 thành thời gian hiện tại tại thời điểm thực hiện lệnh gọi,
- "gốc" phần của nguồn sự kiện (nguồn sự kiện và mã trait); nếu giá trị NULL, thì thuộc tính mặc định sẽ trở thành thiết bị hiện tại. sự kiện được đánh dấu là có liên quan đến thiết bị đang thực hiện cuộc gọi,
- một mã sự kiện có liên quan để nhóm mã sự kiện; khi mã sự kiện có liên quan là 0, sự kiện đó sẽ được đánh dấu là không liên quan đến bất kỳ sự kiện nào khác,
- tính cấp bách; theo mặc định là không khẩn cấp.
Chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||
Trả về |
event_id_t Mã sự kiện nếu sự kiện đó được ghi vào nhật ký, nếu không thì là 0.
|
LogFreeform
event_id_t LogFreeform( ImportanceType inImportance, const char *inFormat, ... )
LogFreeform phát một chuỗi dạng tự do tới luồng sự kiện mặc định.
Chuỗi này sẽ được đóng gói trong một cấu trúc sự kiện gỡ lỗi, có cấu trúc giống với các chuỗi đã ghi nhật ký khác. Mã hồ sơ sự kiện sẽ là mã của một sự kiện Gỡ lỗi Nest và loại sự kiện sẽ là kNestDebug_StringLogEntryEvent
.
Chi tiết | |||||
---|---|---|---|---|---|
Tham số |
|
||||
Trả về |
event_id_t Mã sự kiện nếu sự kiện đó được ghi vào nhật ký, nếu không thì là 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 )
Một hàm trợ giúp để phát văn bản dạng tự do dưới dạng sự kiện gỡ lỗi.
Sự kiện gỡ lỗi là một cấu trúc gồm một vùng nhật ký và văn bản dạng tự do.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
||||||
Giá trị trả về |
|
PlainTextWriter
WEAVE_ERROR PlainTextWriter( ::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
Một hàm trợ giúp để phát văn bản dạng tự do dưới dạng sự kiện gỡ lỗi.
Sự kiện gỡ lỗi là một cấu trúc gồm một vùng nhật ký và văn bản dạng tự do.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
||||||
Giá trị trả về |
|