nl:: Weave:: Profiles:: DataManagement_Current
Namespace ini mencakup semua antarmuka dalam profil Weave for the Weave Data Management (WDM) yang saat ini didukung untuk penggunaan produksi.
Ringkasan
Typedef |
|
---|---|
CommandFlags
|
typedef |
DataVersion
|
typedefuint64_t
|
EventProcessor
|
typedefvoid *
|
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData)
|
typedef Fungsi yang menyediakan elemen eventData untuk subsistem logging peristiwa. |
FetchExternalEventsFunct)(EventLoadOutContext *aContext)
|
typedef Prototipe fungsi untuk callback platform mengambil data peristiwa. |
GenericTraitSinkCatalog
|
typedef |
GenericTraitSourceCatalog
|
typedef |
ImportanceType
|
typedef Pentingnya entri log. |
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)
|
typedefvoid(*
Trait menangani iterator. |
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)
|
typedef |
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)
|
typedefvoid(*
Prototipe fungsi untuk callback yang dipanggil saat peristiwa eksternal dikirimkan ke pelanggan jarak jauh. |
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)
|
typedefvoid(*
Prototipe fungsi untuk callback yang dipanggil saat peristiwa eksternal dikeluarkan dari buffer. |
PropertyDictionaryKey
|
typedefuint16_t
|
PropertyPathHandle
|
typedefuint32_t
PropertyPathHandle adalah hash numerik 32-bit unik dari jalur WDM yang relatif terhadap root instance karakteristik. |
PropertySchemaHandle
|
typedefuint16_t
|
SchemaVersion
|
typedefuint16_t
|
SingleResourceSinkTraitCatalog
|
typedef |
SingleResourceSourceTraitCatalog
|
typedef |
TimestampType
|
typedef Validitas dan jenis stempel waktu yang disertakan dalam EventOptions. |
TraitDataHandle
|
typedefuint16_t
|
duration_t
|
nl::Weave::Profiles::DataManagement_Current::duration_tuint32_t
Jenis yang digunakan untuk menjelaskan durasi, dalam milidetik. |
event_id_t
|
nl::Weave::Profiles::DataManagement_Current::event_id_tuint32_t
Jenis ID peristiwa. |
timestamp_t
|
nl::Weave::Profiles::DataManagement_Current::timestamp_tuint32_t
Jenis yang digunakan untuk menjelaskan stempel waktu dalam milidetik. |
utc_timestamp_t
|
nl::Weave::Profiles::DataManagement_Current::utc_timestamp_tuint64_t
Jenis yang digunakan untuk menjelaskan stempel waktu UTC dalam milidetik. |
Variabel |
|
---|---|
sInstance
|
|
sLogFileName = "topazlog"[]
|
char
|
Fungsi |
|
---|---|
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)
|
Fungsi bantuan yang menerjemahkan elemen data peristiwa yang sudah diserialisasi ke buffering peristiwa.
|
GetPropertyDictionaryKey(PropertyPathHandle aHandle)
|
PropertyDictionaryKey
|
GetPropertySchemaHandle(PropertyPathHandle aHandle)
|
PropertySchemaHandle
|
IsNullPropertyPathHandle(PropertyPathHandle aHandle)
|
bool
|
IsRootPropertyPathHandle(PropertyPathHandle aHandle)
|
bool
|
IsVersionNewer(const DataVersion & aVersion, const DataVersion & aReference)
|
bool
Ini adalah implementasi algoritma yang dioptimalkan untuk membandingkan berbagai versi.
|
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
|
bool
|
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
|
Fungsi utilitas yang menemukan TraitUpdatableDataSink dalam katalog TraitDataSink.
|
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData)
|
Catat peristiwa dari formulir yang telah diserialisasi sebelumnya.
|
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions)
|
Catat peristiwa dari formulir pra-serial, dengan opsi tambahan.
|
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData)
|
Mencatat peristiwa ke dalam log melalui callback.
|
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
|
Mencatat peristiwa ke dalam log melalui callback, dengan opsi.
|
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
|
LogFreeform memunculkan string bentuk bebas ke aliran peristiwa default.
|
LookForElementWithTag(const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader)
|
|
PlainTextWriter(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
|
Fungsi bantuan untuk memunculkan teks bentuk bebas sebagai peristiwa debug.
|
PlainTextWriter(::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
|
Fungsi bantuan untuk memunculkan teks bentuk bebas sebagai peristiwa debug.
|
operator!=(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
|
bool
|
operator==(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
|
bool
|
Serikat |
|
---|---|
nl:: |
Gabungan yang menyediakan sistem set aplikasi atau stempel waktu UTC. |
Enumerasi
@100
@100
Tag untuk kNestDebug_StringLogEntryEvent.
Properti | |
---|---|
kTag_Message
|
String yang berisi pesan debug yang sebenarnya. |
kTag_Region
|
32-bit tanpa tanda tangan menunjukkan region log, yaitu modul yang berkaitan dengan pesan log. |
@101
@101
Tag untuk kNestDebug_TokenizedLogEntryEvent.
Properti | |
---|---|
kTag_Args
|
Array argumen yang akan dikirim bersama dengan pesan token. |
kTag_Token
|
Nilai 32-bit yang tidak ditandatangani yang sesuai dengan token. |
@102
@102
Tag untuk peristiwa yang terus ada.
@104
@104
Jenis pesan profil WDM.
Nilai ini disebut dalam spesifikasi pengelolaan data.
@105
@105
Kode status khusus WDM.
@147
@147
@95
@95
Tag Setelan Logging.
Properti | |
---|---|
kTag_CurrentImportance
|
Nilai penting logging saat ini, nilainya berjenis ImportanceType. |
kTag_ImportanceExpiration
|
Waktu, dalam detik UTC jika setelan logging yang ditingkatkan saat ini kembali ke nilai default. |
kTag_LoggingDestination
|
URL yang menunjukkan tujuan upload log. |
kTag_MaximumLogUploadInterval
|
Durasi maksimal, dalam detik, antara upaya upload log yang dipicu secara otomatis. |
kTag_MinimumLogUploadInterval
|
Durasi minimal, dalam detik, antara upaya upload log yang dipicu secara otomatis. |
kTag_TraitLoggingImportance
|
Array opsional yang secara selektif memetakan profil yang dipilih ke level logging yang lebih tinggi. Setiap elemen dalam array mengambil bentuk (profile,path,loggingimportance) untuk meningkatkan logging secara selektif dari subset sistem. Prioritas logging profil yang ditingkatkan hanya menjadi penting jika prioritas logging melebihi prioritas logging dari currentImportance dan tunduk pada waktu habis masa berlaku yang sama dengan currentImportance. |
@96
@96
Tag untuk kemampuan logging.
Properti | |
---|---|
kTag_LogBufferingCapacity
|
Bilangan bulat 32-bit tanpa tanda tangan yang menjelaskan kapasitas buffering log dalam kB. |
kTag_LoggingVolume
|
Bilangan bulat 32-bit tanpa tanda tangan yang menjelaskan volume logging yang diharapkan dalam kB/hari. |
kTag_SupportedLogTransports
|
Array mekanisme transpor log yang didukung. |
kTag_SupportsNonVolatileStorage
|
Boolean yang menunjukkan apakah perangkat mendukung penyimpanan log nonvolatil. |
kTag_SupportsPerTraitVerbosity
|
Boolean yang menunjukkan apakah perangkat mendukung setelan panjang per karakteristik. |
kTag_SupportsStreaming
|
Boolean yang menunjukkan apakah perangkat mendukung log streaming. |
@97
@97
Tag untuk metadata peristiwa.
Untuk semantik lengkap dari nilai tag, lihat Spesifikasi Desain Peristiwa.
Properti | |
---|---|
kTag_EventData
|
Opsional. Data peristiwa itu sendiri. Jika kosong, struktur defaultnya adalah struktur kosong. |
kTag_EventDeltaSystemTime
|
Tag internal WDM, perbedaan waktu dari peristiwa sebelumnya dalam encoding. |
kTag_EventDeltaUTCTime
|
Tag internal WDM, perbedaan waktu dari peristiwa sebelumnya dalam encoding. |
kTag_EventID
|
Nomor urut peristiwa, dinyatakan sebagai kuantitas tidak bertanda 64-bit. Harus berurutan, lompatan dalam urutan menunjukkan kesenjangan peristiwa. |
kTag_EventImportance
|
Pentingnya peristiwa. |
kTag_EventResourceID
|
Opsional. Nilainya adalah ID resource yang terkait dengan peristiwa. Jika dihapus, nilai sama dengan nilai kTag_EventSource |
kTag_EventSource
|
NodeID perangkat yang menghasilkan peristiwa. |
kTag_EventSystemTimestamp
|
Opsional. Stempel waktu sistem untuk peristiwa dalam milidetik. |
kTag_EventTraitInstanceID
|
Opsional, instance karakteristik yang menghasilkan peristiwa. |
kTag_EventTraitProfileID
|
Wajib. Bilangan bulat 32-bit tanpa tanda tangan yang sama dengan ProfileID karakteristik. |
kTag_EventType
|
Wajib. Bilangan bulat 16-bit tanpa tanda tangan yang sama dengan wdl.event.id untuk jenis peristiwa ini. |
kTag_EventUTCTimestamp
|
Opsional. Stempel waktu UTC peristiwa dalam milidetik. |
kTag_ExternalEventStructure
|
Tag internal untuk peristiwa eksternal. Tidak pernah ditransmisikan melalui kabel, tidak boleh digunakan di luar library Weave. |
kTag_RelatedEventID
|
Opsional. ID Peristiwa yang terkait dengan peristiwa ini. Jika dihilangkan, nilai ini sama dengan nilai kTag_EventID. |
kTag_RelatedEventImportance
|
Opsional. Pentingnya peristiwa terkait. Jika dihilangkan, nilai sama dengan nilai kTag_EventImportance. |
@98
@98
Definisi profil untuk karakteristik debug.
@99
@99
Jenis peristiwa untuk fitur Nest Debug.
Properti | |
---|---|
kNestDebug_StringLogEntryEvent
|
Peristiwa untuk pesan debug string bentuk bebas. |
kNestDebug_TokenizedHeaderEntryEvent
|
Peristiwa untuk menyampaikan informasi header token. |
kNestDebug_TokenizedLogEntryEvent
|
Peristiwa untuk pesan debug dengan token. |
CommandFlags
CommandFlags
Properti | |
---|---|
kCommandFlag_ActionTimeValid
|
Tetapkan kapan waktu tindakan valid. |
kCommandFlag_ExpiryTimeValid
|
Setel kapan waktu masa berakhir valid. |
kCommandFlag_InitiationTimeValid
|
Tetapkan ketika waktu init valid. |
kCommandFlag_IsOneWay
|
Menetapkan kapan perintah bersifat satu arah. |
kCommandFlag_MustBeVersionValid
|
Tetapkan saat kolom versi valid. |
ImportanceType
ImportanceType
Pentingnya entri log.
Tingkat kepentingan digunakan sebagai cara untuk memfilter peristiwa sebelum benar-benar ditampilkan ke dalam log. Setelah peristiwa ada di log, kami tidak membuat ketentuan lebih lanjut untuk menghapusnya dari log. Tingkat kepentingan berfungsi untuk memprioritaskan penyimpanan peristiwa. Jika acara yang sangat penting ditambahkan ke buffer penuh, acara akan dihapus sesuai urutan tingkat kepentingan (dan usia) untuk mengakomodasinya. Dengan demikian, tingkat kepentingan hanya memiliki nilai relatif. Jika sistem hanya menggunakan satu tingkat kepentingan, peristiwa akan dihapus hanya sesuai urutan usia, seperti buffer cincin.
Properti | |
---|---|
Debug
|
Nilai penting debug menunjukkan entri log yang menarik bagi developer sistem dan digunakan terutama dalam fase pengembangan. Log penting debug tidak diperhitungkan dalam bandwidth atau anggaran daya perangkat yang dibatasi. Oleh karena itu, log tersebut hanya boleh digunakan selama rentang waktu terbatas dalam sistem produksi. |
Info
|
Tingkat kepentingan info menunjukkan entri log yang memberikan insight dan diagnostik tambahan ke dalam sistem yang berjalan. Tingkat logging info dapat digunakan selama jangka waktu yang lama dalam sistem produksi, atau dapat digunakan sebagai level log default dalam uji coba lapangan. Pada perangkat dengan batasan, entri yang dicatat dengan tingkat Info harus diperhitungkan dalam anggaran bandwidth dan memori, tetapi bukan dalam anggaran daya. |
Production
|
Tingkat kepentingan produksi menunjukkan entri log yang digunakan dalam pemantauan dan pemeliharaan ekosistem Nest yang berkelanjutan. Pada perangkat dengan keterbatasan, entri yang dicatat dengan tingkat kepentingan Produksi harus diperhitungkan dalam anggaran daya dan memori, karena diharapkan entri tersebut selalu dicatat dalam log dan dipindahkan dari perangkat. |
ProductionCritical
|
Tingkat kepentingan Penting dalam Produksi menunjukkan peristiwa yang kerugiannya akan berdampak langsung pada fitur yang berhubungan langsung dengan pelanggan. Aplikasi dapat menggunakan hilangnya peristiwa Penting Produksi untuk menunjukkan kegagalan sistem. Pada perangkat yang dibatasi, entri yang dicatat dengan tingkat kepentingan Kritis Produksi harus diperhitungkan dalam anggaran daya dan memori, karena diharapkan entri tersebut selalu dicatat dan dipindahkan dari perangkat. |
LoggingManagementStates
LoggingManagementStates
Properti | |
---|---|
kLoggingManagementState_Holdoff
|
Log offload telah selesai; kami tidak memulai ulang log sampai penangguhan berakhir. |
kLoggingManagementState_Idle
|
Tidak ada log offload yang sedang berlangsung, log offload dapat dimulai tanpa batasan apa pun. |
kLoggingManagementState_InProgress
|
Keluar dari beban sedang berlangsung. |
kLoggingManagementState_Shutdown
|
Tidak mampu menjalankan operasi logging apa pun. |
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)
Fungsi yang menyediakan elemen eventData untuk subsistem logging peristiwa.
Fungsi jenis ini diharapkan menyediakan elemen eventData untuk subsistem logging peristiwa. Fungsi jenis ini dipanggil setelah subsistem peristiwa membuat semua metadata peristiwa yang diperlukan. Fungsi ini dipanggil dengan objek nl::Weave::TLV::TLVWriter yang akan memunculkan satu elemen TLV yang diberi tag kTag_EventData; nilai elemen tersebut HARUS berupa struktur yang berisi data peristiwa. Data peristiwa itu sendiri harus disusun menggunakan tag konteks.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Nilai Pengembalian |
|
PlainTextWriter
EventWriterTLVCopy
FetchExternalEventsFunct
WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)
Prototipe fungsi untuk callback platform mengambil data peristiwa.
Serupa dengan FetchEventsFrom, fungsi pengambilan ini menampilkan semua peristiwa dari EventLoadOutContext.mStartingEventID melalui ExternalEvents.mLastEventID.
Pointer konteks adalah jenis FetchExternalEventsContext. Hal ini mencakup EventLoadOutContext, dengan beberapa variabel bantuan untuk format TLV. Hal ini juga menyertakan pointer ke struct ExternalEvents yang dibuat saat pendaftaran callback. Ini menentukan rentang ID peristiwa untuk callback.
Saat kembali dari fungsi, EventLoadOutContext.mCurrentEventID harus mencerminkan ID peristiwa pertama yang belum berhasil ditulis ke buffer TLV. Platform harus menulis header peristiwa dan data ke penulis TLV dalam format yang benar, yang ditentukan oleh protokol EventLogging. Platform juga harus menjaga keunikan peristiwa dan stempel waktu.
Semua error TLV harus disebarkan ke tingkat yang lebih tinggi. Misalnya, kehabisan ruang di buffer akan memicu pesan terkirim, diikuti oleh panggilan lain ke callback dengan ID peristiwa mana pun yang tersisa.
Detail | |||||||||
---|---|---|---|---|---|---|---|---|---|
Nilai Pengembalian |
|
GenericTraitSinkCatalog
GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog
GenericTraitSourceCatalog
GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog
ImportanceType
enum nl::Weave::Profiles::DataManagement_Current::ImportanceType ImportanceType
Pentingnya entri log.
Tingkat kepentingan digunakan sebagai cara untuk memfilter peristiwa sebelum benar-benar ditampilkan ke dalam log. Setelah peristiwa ada di log, kami tidak membuat ketentuan lebih lanjut untuk menghapusnya dari log. Tingkat kepentingan berfungsi untuk memprioritaskan penyimpanan peristiwa. Jika acara yang sangat penting ditambahkan ke buffer penuh, acara akan dihapus sesuai urutan tingkat kepentingan (dan usia) untuk mengakomodasinya. Dengan demikian, tingkat kepentingan hanya memiliki nilai relatif. Jika sistem hanya menggunakan satu tingkat kepentingan, peristiwa akan dihapus hanya sesuai urutan usia, seperti buffer cincin.
IteratorCallback
void(* IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)
Trait menangani iterator.
LoggingBufferHandler
WEAVE_ERROR(* LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)
NotifyExternalEventsDeliveredFunct
void(* NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)
Prototipe fungsi untuk callback yang dipanggil saat peristiwa eksternal dikirimkan ke pelanggan jarak jauh.
Saat peristiwa eksternal ditayangkan ke pelanggan jarak jauh, mesin akan memberikan notifikasi kepada penyedia acara eksternal. Callback berisi peristiwa ID terakhir yang dikirim, dan ID pelanggan yang menerima peristiwa tersebut.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
NotifyExternalEventsEvictedFunct
void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)
Prototipe fungsi untuk callback yang dipanggil saat peristiwa eksternal dikeluarkan dari buffer.
Saat objek peristiwa eksternal dikeluarkan dari buffering pesan keluar, mesin akan memberikan notifikasi kepada penyedia peristiwa eksternal. Callback berisi peristiwa eksternal yang akan dikeluarkan.
Detail | |||
---|---|---|---|
Parameter |
|
PropertyDictionaryKey
uint16_t PropertyDictionaryKey
PropertyPathHandle
uint32_t PropertyPathHandle
PropertyPathHandle adalah hash numerik 32-bit unik dari jalur WDM yang relatif terhadap root instance karakteristik.
Ada dua bagian di dalamnya:
- Angka 16-bit lebih rendah yang memetakan ke bagian statis skema.
- 16 bit yang lebih rendah merujuk ke jalur dalam elemen kamus, sedangkan angka 16 bit atas mewakili kunci kamus yang terkait dengan elemen tersebut. Jika 16 bit yang lebih rendah merujuk ke elemen non kamus, maka 16 bit atas harus 0.
Beberapa karakteristik:
- Setiap trait memiliki ruang pengendali jalur propertinya sendiri.
- Setiap jalur sub-jalur WDM unik akan memiliki PropertyPathHandle yang juga unik.
- PropertyPathHandles dihasilkan secara otomatis (dilakukan secara manual untuk saat ini) oleh compiler fitur dari IDL dan direpresentasikan sebagai daftar enumeran dalam file header fitur yang sesuai.
- Dengan konstruksi ini, logika aplikasi tidak perlu berurusan dengan jalur WDM secara langsung. Sebaliknya, interaksi mereka dengan WDM dilakukan secara eksklusif melalui akun ini.
- Ada dua nilai yang dicadangkan untuk tuas jalur yang memiliki arti tertentu:
- 0 menunjukkan handle 'NULL'
- 1 menunjukkan handle yang menunjuk ke akar instance 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
Validitas dan jenis stempel waktu yang disertakan dalam EventOptions.
TraitDataHandle
uint16_t TraitDataHandle
duration_t
uint32_t duration_t
Jenis yang digunakan untuk menjelaskan durasi, dalam milidetik.
event_id_t
uint32_t event_id_t
Jenis ID peristiwa.
timestamp_t
uint32_t timestamp_t
Jenis yang digunakan untuk menjelaskan stempel waktu dalam milidetik.
utc_timestamp_t
uint64_t utc_timestamp_t
Jenis yang digunakan untuk menjelaskan stempel waktu UTC dalam milidetik.
Variabel
sInstance
LoggingManagement sInstance
sLogFileName
char sLogFileName[] = "topazlog"
Fungsi
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 )
Fungsi bantuan yang menerjemahkan elemen data peristiwa yang sudah diserialisasi ke buffering peristiwa.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Nilai Pengembalian |
|
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 )
Ini adalah implementasi algoritma yang dioptimalkan untuk membandingkan berbagai versi.
Di sisi klien, versi yang diterima dari layanan selalu yang terbaru.
IsVersionNewerOrEqual
bool IsVersionNewerOrEqual( const DataVersion & aVersion, const DataVersion & aReference )
Temukan
TraitUpdatableDataSink * Locate( TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog )
Fungsi utilitas yang menemukan TraitUpdatableDataSink dalam katalog TraitDataSink.
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Hasil |
Pointer ke TraitUpdatableDataSink; NULL jika handle tidak ada atau mengarah ke TraitDataSink yang tidak dapat diupdate.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData )
Catat peristiwa dari formulir yang telah diserialisasi sebelumnya.
Fungsi ini mencatat peristiwa yang direpresentasikan sebagai nl::Weave::TLV::TLVReader ke dalam log. Ini menyiratkan bahwa representasi data peristiwa sudah diserialisasi dalam penyimpanan yang mendasari nl::Weave::TLV::TLVReader. File nl::Weave::TLV::TLVReader diharapkan berisi setidaknya satu elemen data, dan elemen tersebut harus berupa struktur. Elemen pertama yang dibacakan oleh pembaca diperlakukan sebagai data peristiwa dan disimpan dalam log peristiwa. Data peristiwa HARUS berisi tag konteks untuk ditafsirkan dalam skema yang diidentifikasi oleh inProfileID dan inEventType. Tag elemen pertama akan diabaikan; sistem logging peristiwa akan menggantinya dengan tag eventData.
Peristiwa ini dicatat ke dalam log jika inImportance-nya melebihi nilai minimum logging yang ditentukan dalam LoggingConfiguration. Jika nilai penting peristiwa tidak memenuhi nilai minimum saat ini, peristiwa tersebut akan dihapus dan fungsi akan menampilkan 0
sebagai ID peristiwa yang dihasilkan.
Varian pemanggilan ini secara implisit menentukan semua opsi peristiwa default:
- peristiwa tersebut diberi stempel waktu saat ini pada saat panggilan,
- peristiwa itu ditandai sebagai berkaitan dengan perangkat yang melakukan panggilan,
- suatu peristiwa bersifat mandiri, tidak terkait dengan peristiwa lainnya,
- acara ini ditandai sebagai tidak mendesak,
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Hasil |
event_id_t ID peristiwa jika peristiwa ditulis ke log, 0 jika tidak.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions )
Catat peristiwa dari formulir pra-serial, dengan opsi tambahan.
Fungsi ini mencatat peristiwa yang direpresentasikan sebagai nl::Weave::TLV::TLVReader ke dalam log. Ini menyiratkan bahwa representasi data peristiwa sudah diserialisasi dalam penyimpanan yang mendasari nl::Weave::TLV::TLVReader. File nl::Weave::TLV::TLVReader diharapkan berisi setidaknya satu elemen data, dan elemen tersebut harus berupa struktur. Elemen pertama yang dibacakan oleh pembaca diperlakukan sebagai data peristiwa dan disimpan dalam log peristiwa. Data peristiwa HARUS berisi tag konteks untuk ditafsirkan dalam skema yang diidentifikasi oleh inProfileID dan inEventType. Tag elemen pertama akan diabaikan; sistem logging peristiwa akan menggantinya dengan tag eventData.
Peristiwa ini dicatat ke dalam log jika inImportance-nya melebihi nilai minimum logging yang ditentukan dalam LoggingConfiguration. Jika nilai penting peristiwa tidak memenuhi nilai minimum saat ini, peristiwa tersebut akan dihapus dan fungsi akan menampilkan 0
sebagai ID peristiwa yang dihasilkan.
Varian pemanggilan ini mengizinkan pemanggil menyetel kombinasi EventOptions
apa pun:
- stempel waktu, jika 0 ditetapkan secara default ke waktu saat ini pada titik panggilan,
- bagian "root" dari sumber kejadian (sumber kejadian dan ID sifat); jika NULL, maka bawaan-nya adalah perangkat saat ini. kejadian ditandai sebagai terkait dengan perangkat yang membuat panggilan,
- ID peristiwa terkait untuk mengelompokkan ID peristiwa; jika ID peristiwa terkait adalah 0, peristiwa ditandai sebagai tidak terkait dengan peristiwa lain,
- urgensi; secara {i>default<i} tidak mendesak.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Hasil |
event_id_t ID peristiwa jika peristiwa ditulis ke log, 0 jika tidak.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData )
Mencatat peristiwa ke dalam log melalui callback.
Fungsi ini mencatat peristiwa yang diwakili sebagai EventWriterFunct dan konteks appData
khusus aplikasi ke dalam log. Fungsi ini menulis metadata peristiwa dan memanggil inEventWriter
dengan referensi nl::Weave::TLV::TLVWriter dan konteks inAppData
sehingga kode pengguna dapat memunculkan data peristiwa secara langsung ke log peristiwa. Bentuk logging peristiwa ini meminimalkan konsumsi memori, karena data peristiwa diserialisasi langsung ke buffer target. Data peristiwa HARUS berisi tag konteks untuk ditafsirkan dalam skema yang diidentifikasi oleh inProfileID
dan inEventType
. Tag elemen pertama akan diabaikan; sistem logging peristiwa akan menggantinya dengan tag eventData.
Peristiwa ini dicatat ke dalam log jika inImportance-nya melebihi nilai minimum logging yang ditentukan dalam LoggingConfiguration. Jika nilai penting peristiwa tidak memenuhi nilai minimum saat ini, peristiwa tersebut akan dihapus dan fungsi akan menampilkan 0
sebagai ID peristiwa yang dihasilkan.
Varian pemanggilan ini secara implisit menentukan semua opsi peristiwa default:
- peristiwa tersebut diberi stempel waktu saat ini pada saat panggilan,
- peristiwa itu ditandai sebagai berkaitan dengan perangkat yang melakukan panggilan,
- suatu peristiwa bersifat mandiri, tidak terkait dengan peristiwa lainnya,
- acara ini ditandai sebagai tidak mendesak,
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Hasil |
event_id_t ID peristiwa jika peristiwa ditulis ke log, 0 jika tidak.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions )
Mencatat peristiwa ke dalam log melalui callback, dengan opsi.
Fungsi ini mencatat peristiwa yang diwakili sebagai EventWriterFunct dan konteks appData
khusus aplikasi ke dalam log. Fungsi ini menulis metadata peristiwa dan memanggil inEventWriter
dengan referensi nl::Weave::TLV::TLVWriter dan konteks inAppData
sehingga kode pengguna dapat memunculkan data peristiwa secara langsung ke log peristiwa. Bentuk logging peristiwa ini meminimalkan konsumsi memori, karena data peristiwa diserialisasi langsung ke buffer target. Data peristiwa HARUS berisi tag konteks untuk ditafsirkan dalam skema yang diidentifikasi oleh inProfileID
dan inEventType
. Tag elemen pertama akan diabaikan; sistem logging peristiwa akan menggantinya dengan tag eventData.
Peristiwa ini dicatat ke dalam log jika inImportance-nya melebihi nilai minimum logging yang ditentukan dalam LoggingConfiguration. Jika nilai penting peristiwa tidak memenuhi nilai minimum saat ini, peristiwa tersebut akan dihapus dan fungsi akan menampilkan 0
sebagai ID peristiwa yang dihasilkan.
Varian pemanggilan ini mengizinkan pemanggil menyetel kombinasi EventOptions
apa pun:
- stempel waktu, jika 0 ditetapkan secara default ke waktu saat ini pada titik panggilan,
- bagian "root" dari sumber kejadian (sumber kejadian dan ID sifat); jika NULL, maka bawaan-nya adalah perangkat saat ini. kejadian ditandai sebagai terkait dengan perangkat yang membuat panggilan,
- ID peristiwa terkait untuk mengelompokkan ID peristiwa; jika ID peristiwa terkait adalah 0, peristiwa ditandai sebagai tidak terkait dengan peristiwa lain,
- urgensi; secara {i>default<i} tidak mendesak.
Detail | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Hasil |
event_id_t ID peristiwa jika peristiwa ditulis ke log, 0 jika tidak.
|
LogFreeform
event_id_t LogFreeform( ImportanceType inImportance, const char *inFormat, ... )
LogFreeform memunculkan string bentuk bebas ke aliran peristiwa default.
String akan dienkapsulasi dalam struktur peristiwa debug, yang secara struktural identik dengan string lainnya yang dicatat ke dalam log. ID profil peristiwa adalah peristiwa Nest Debug, dan jenis peristiwanya adalah kNestDebug_StringLogEntryEvent
.
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Hasil |
event_id_t ID peristiwa jika peristiwa ditulis ke log, 0 jika tidak.
|
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 )
Fungsi bantuan untuk memunculkan teks bentuk bebas sebagai peristiwa debug.
Peristiwa debug adalah struktur dengan logregion dan teks bentuk bebas.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Nilai Pengembalian |
|
PlainTextWriter
WEAVE_ERROR PlainTextWriter( ::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
Fungsi bantuan untuk memunculkan teks bentuk bebas sebagai peristiwa debug.
Peristiwa debug adalah struktur dengan logregion dan teks bentuk bebas.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Nilai Pengembalian |
|