nl:: Weave:: Profiles:: DataManagement_Current
この名前空間には、現在本番環境での使用がサポートされている Weave Data Management(WDM)プロファイル用の Weave 内のすべてのインターフェースが含まれます。
概要
Typedef |
|
---|---|
CommandFlags
|
typedef |
DataVersion
|
typedefuint64_t
|
EventProcessor
|
typedefvoid *
|
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData)
|
typedef イベント ロギング サブシステムの eventData 要素を提供する関数。 |
FetchExternalEventsFunct)(EventLoadOutContext *aContext)
|
typedef イベントデータを取得するプラットフォーム コールバックの関数のプロトタイプ。 |
GenericTraitSinkCatalog
|
typedef |
GenericTraitSourceCatalog
|
typedef |
ImportanceType
|
typedef ログエントリの重要度。 |
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)
|
typedefvoid(*
トレイトのハンドル イテレータ。 |
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)
|
typedef |
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)
|
typedefvoid(*
外部イベントがリモートのサブスクライバーに配信されるときに呼び出されるコールバックの関数プロトタイプ。 |
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)
|
typedefvoid(*
外部イベントがバッファから強制排除されたときに呼び出されるコールバックの関数プロトタイプ。 |
PropertyDictionaryKey
|
typedefuint16_t
|
PropertyPathHandle
|
typedefuint32_t
PropertyPathHandle は、トレイト インスタンスのルートに関連する WDM パスの一意の 32 ビット数値ハッシュです。 |
PropertySchemaHandle
|
typedefuint16_t
|
SchemaVersion
|
typedefuint16_t
|
SingleResourceSinkTraitCatalog
|
typedef |
SingleResourceSourceTraitCatalog
|
typedef |
TimestampType
|
typedef EventOptions に含まれるタイムスタンプの有効性と種類。 |
TraitDataHandle
|
typedefuint16_t
|
duration_t
|
nl::Weave::Profiles::DataManagement_Current::duration_tuint32_t
期間の記述に使用するタイプ(ミリ秒単位)。 |
event_id_t
|
nl::Weave::Profiles::DataManagement_Current::event_id_tuint32_t
イベント ID のタイプです。 |
timestamp_t
|
nl::Weave::Profiles::DataManagement_Current::timestamp_tuint32_t
タイムスタンプを記述するために使用される、ミリ秒単位の型。 |
utc_timestamp_t
|
nl::Weave::Profiles::DataManagement_Current::utc_timestamp_tuint64_t
UTC タイムスタンプを記述するために使用されるタイプ(ミリ秒単位)。 |
Variables |
|
---|---|
sInstance
|
|
sLogFileName = "topazlog"[]
|
char
|
関数 |
|
---|---|
BdxErrorHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, WEAVE_ERROR aErrorCode)
|
void
|
BdxGetBlockHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aIsLastBlock)
|
void
|
BdxRejectHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aReport)
|
void
|
BdxSendAcceptHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::BulkDataTransfer::SendAccept *aSendAcceptMsg)
|
|
BdxXferDoneHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer)
|
void
|
BdxXferErrorHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aXferError)
|
void
|
CreatePropertyPathHandle(PropertySchemaHandle aPropertyPathSchemaId, PropertyDictionaryKey aPropertyPathDictionaryKey)
|
|
EventWriterTLVCopy(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
|
すでにシリアル化された eventdata 要素をイベント バッファに変換するヘルパー関数。
|
GetPropertyDictionaryKey(PropertyPathHandle aHandle)
|
PropertyDictionaryKey
|
GetPropertySchemaHandle(PropertyPathHandle aHandle)
|
PropertySchemaHandle
|
IsNullPropertyPathHandle(PropertyPathHandle aHandle)
|
bool
|
IsRootPropertyPathHandle(PropertyPathHandle aHandle)
|
bool
|
IsVersionNewer(const DataVersion & aVersion, const DataVersion & aReference)
|
bool
これは、バージョンを比較するためのアルゴリズムの最適化された実装です。
|
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
|
bool
|
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
|
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:: |
アプリケーション セット システムまたは UTC タイムスタンプを提供するユニオン。 |
列挙型
100
@100
kNestDebug_StringLogEntryEvent のタグ。
Properties | |
---|---|
kTag_Message
|
実際のデバッグ メッセージを含む文字列。 |
kTag_Region
|
ログ領域(ログメッセージに関連するモジュール)を示す 32 ビット符号なし。 |
@101
@101
kNestDebug_TokenizedLogEntryEvent のタグ。
Properties | |
---|---|
kTag_Args
|
トークン メッセージとともに送信される引数の配列。 |
kTag_Token
|
トークンに対応する 32 ビット符号なし値。 |
102
@102
永続的なイベントのタグ。
104
@104
WDM プロファイルのメッセージ タイプです。
これらの値はデータ管理仕様で指定されています。
105
@105
WDM 固有のステータス コード。
147
@147
95 人
@95
Logging 設定タグ。
Properties | |
---|---|
kTag_CurrentImportance
|
現在のロギングの重要度。値は ImportanceType 型です。 |
kTag_ImportanceExpiration
|
現在の昇格したロギング設定がデフォルト値に戻された時間(UTC 秒)。 |
kTag_LoggingDestination
|
ログのアップロード先を示す URL。 |
kTag_MaximumLogUploadInterval
|
ログが自動的にアップロードされるまでの最大間隔(秒)。 |
kTag_MinimumLogUploadInterval
|
ログの自動アップロードの試行の最小間隔(秒単位)。 |
kTag_TraitLoggingImportance
|
選択したプロファイルをより高いロギングレベルに選択的にマッピングするオプション配列。 配列の各要素は、システムのサブセットからのロギングを選択的に昇格させる形式(profile、path、loggingimportance)を使用します。昇格したプロファイル ロギングの優先順位は、そのロギングの優先順位が currentImportance の優先順位を上回った場合に重要であり、currentImportance と同じ有効期間が適用されます。 |
96
@96
ロギング機能のタグ。
Properties | |
---|---|
kTag_LogBufferingCapacity
|
32 ビットの符号なし整数。ログバッファリング容量(KB)を示します。 |
kTag_LoggingVolume
|
予想されるログ容量を 1 日あたり KB で表す 32 ビット符号なし整数。 |
kTag_SupportedLogTransports
|
サポートされているログ転送メカニズムの配列。 |
kTag_SupportsNonVolatileStorage
|
デバイスが不揮発性ログ ストレージをサポートしているかどうかを示すブール値。 |
kTag_SupportsPerTraitVerbosity
|
デバイスがトレイトごとの詳細設定をサポートしているかどうかを示すブール値。 |
kTag_SupportsStreaming
|
デバイスがストリーミング ログをサポートしているかどうかを示すブール値。 |
97
@97
イベント メタデータのタグ。
タグ値の完全なセマンティクスについては、イベント デザインの仕様をご覧ください。
Properties | |
---|---|
kTag_EventData
|
省略可。イベントデータ。空の場合、デフォルトで空の構造になります。 |
kTag_EventDeltaSystemTime
|
WDM の内部タグ。エンコードの前のイベントとの時差があります。 |
kTag_EventDeltaUTCTime
|
WDM の内部タグ。エンコードの前のイベントとの時差があります。 |
kTag_EventID
|
イベントのシーケンス番号。64 ビット符号なし数量で表されます。 連続している必要があります。シーケンス内のジャンプはイベントのギャップを示します。 |
kTag_EventImportance
|
イベントの重要性。 |
kTag_EventResourceID
|
省略可。 値は、イベントが関係するリソースの ID です。省略した場合、値は kTag_EventSource の値と同じになります。 |
kTag_EventSource
|
イベントを生成したデバイスの NodeID。 |
kTag_EventSystemTimestamp
|
省略可。イベントのシステム タイムスタンプ(ミリ秒単位)。 |
kTag_EventTraitInstanceID
|
省略可。イベントが発生したトレイトのインスタンス。 |
kTag_EventTraitProfileID
|
必須。トレイトの ProfileID に等しい 32 ビット符号なし整数。 |
kTag_EventType
|
必須。このタイプのイベントの wdl.event.id と等しい 16 ビット符号なし整数。 |
kTag_EventUTCTimestamp
|
省略可。イベントの UTC タイムスタンプ(ミリ秒単位)。 |
kTag_ExternalEventStructure
|
外部イベント用の内部タグ。ケーブルを介して転送しないでください。Weave ライブラリの外部で使用しないでください。 |
kTag_RelatedEventID
|
省略可。 このイベントが関連しているイベントの ID。省略した場合は、kTag_EventID の値と等しくなります。 |
kTag_RelatedEventImportance
|
省略可。 関連するイベントの重要性省略した場合は、kTag_EventImportance の値と等しくなります。 |
98
@98
デバッグ トレイトのプロファイル定義です。
99 人
@99
Google Nest Debug トレイトのイベントタイプ。
Properties | |
---|---|
kNestDebug_StringLogEntryEvent
|
自由形式の文字列デバッグ メッセージのイベント。 |
kNestDebug_TokenizedHeaderEntryEvent
|
トークン化されたヘッダー情報を伝えるイベント。 |
kNestDebug_TokenizedLogEntryEvent
|
トークン化されたデバッグ メッセージのイベント。 |
コマンドフラグ
CommandFlags
Properties | |
---|---|
kCommandFlag_ActionTimeValid
|
アクション時間の有効期間を設定します。 |
kCommandFlag_ExpiryTimeValid
|
有効期限の有効期間を設定します。 |
kCommandFlag_InitiationTimeValid
|
init 時間が有効なときに設定されます。 |
kCommandFlag_IsOneWay
|
コマンドが一方向のときに設定します。 |
kCommandFlag_MustBeVersionValid
|
バージョン フィールドが有効な場合に設定します。 |
インポートの種類
ImportanceType
ログエントリの重要度。
重要事項は、ログに出力される前にイベントをフィルタリングするために使用します。イベントがログに記録された後は、ログから消去するようなプロビジョニングは行われません。重要度はイベントの保存を優先する役割を果たします。重要度の高いイベントがバッファ全体に追加されると、そのイベントは収容人数(および年齢)の順番で破棄されます。したがって、重要度は相対的価値しかありません。システムで重要度が 1 つしか使用されていない場合、イベントはリングリング バッファのように時間の経過に従ってのみ破棄されます。
Properties | |
---|---|
Debug
|
デバッグの重要度は、システム デベロッパーにとって関心のあるログエントリを示し、主に開発フェーズで使用されます。 デバッグの重要度のログは、制約のあるデバイスの帯域幅や電力の予算では考慮されないため、本番環境システムでは限られた期間に限って使用する必要があります。 |
Info
|
情報の重要度は、実行中のシステムに関する追加の分析情報や診断情報を提供するログエントリを示します。 情報ロギングレベルは、本番環境システムでは長期間使用することも、フィールド トライアルでデフォルトのログレベルとして使用することもできます。制約があるデバイスでは、情報レベルで記録されたエントリは帯域幅とメモリのバジェットで考慮される必要がありますが、電力バジェットでは考慮されません。 |
Production
|
「本番環境の重要度」は、Nest のエコシステムの継続的なモニタリングとメンテナンスで使用されるログエントリを示します。 制約のあるデバイスでは、本番環境の重要性がログに記録されるエントリは、常にログに記録され、デバイスからオフロードされることを想定しているため、電力とメモリのバジェットを考慮する必要があります。 |
ProductionCritical
|
「本番環境の重要性」は、損失がお客様向けの機能に直接影響する事象を示します。 アプリケーションは、本番環境に重大な影響が生じると、システムの障害を示すことができます。制約のあるデバイスでは、重要なデバイスで本番環境のログがログに記録され、オフロードされるという想定に沿って、本番環境の重要度が重要なエントリを記録する必要があります。 |
LoggingManagementState
LoggingManagementStates
Properties | |
---|---|
kLoggingManagementState_Holdoff
|
ログのオフロードが完了しました。ホールドオフが期限切れになるまでログは再起動されません。 |
kLoggingManagementState_Idle
|
進行中のログオフロードはありません。ログのオフロードは制約なしで開始できます。 |
kLoggingManagementState_InProgress
|
ログオフロードが進行中です。 |
kLoggingManagementState_Shutdown
|
ロギング オペレーションを実行できない。 |
Typedef
コマンドフラグ
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 オブジェクトとともに呼び出され、kTag_EventData というタグが付いた単一の TLV 要素を出力します。この要素の値は、イベントデータを含む構造にする必要があります。イベントデータ自体は、コンテキストタグを使用して構造化する必要があります。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
PlainTextWriter
EventWriterTLVCopy
FetchExternalEventsFunct
WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)
イベントデータを取得するプラットフォーム コールバックの関数のプロトタイプ。
FetchEvents と同様に、このフェッチ関数は EventLoadOutContext.mStartingEventID から ExternalEvents.mLastEventID を通じてすべてのイベントを返します。
コンテキスト ポインタのタイプは FetchExternalEventsContext です。これには、EventLoadOutContext と、TLV 形式のヘルパー変数が含まれます。また、コールバックの登録時に作成された ExternalEvents 構造体へのポインタも含まれます。コールバックのイベント ID 範囲を指定します。
関数から戻ると、EventLoadOutContext.mCurrentEventID は TLV バッファに正常に書き込まれなかった最初のイベント ID を反映します。プラットフォームは、EventLogging プロトコルで指定された正しい形式で、イベント ヘッダーとデータを TLV ライターに書き込む必要があります。また、イベントとタイムスタンプの一意性が維持されている必要があります。
すべての TLV エラーは上位レベルに伝播する必要があります。たとえば、バッファの空き容量が足りなくなると、送信メッセージがトリガーされた後、イベント ID が残っている状態でコールバックが再度呼び出されます。
詳細 | |||||||||
---|---|---|---|---|---|---|---|---|---|
戻り値 |
|
GenericTraitSinkCatalog
GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog
GenericTraitSourceCatalog
GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog
インポートの種類
enum nl::Weave::Profiles::DataManagement_Current::ImportanceType ImportanceType
ログエントリの重要度。
重要事項は、ログに出力される前にイベントをフィルタリングするために使用します。イベントがログに記録された後は、ログから消去するようなプロビジョニングは行われません。重要度はイベントの保存を優先する役割を果たします。重要度の高いイベントがバッファ全体に追加されると、そのイベントは収容人数(および年齢)の順番で破棄されます。したがって、重要度は相対的価値しかありません。システムで重要度が 1 つしか使用されていない場合、イベントはリングリング バッファのように時間の経過に従ってのみ破棄されます。
イテレータ コールバック
void(* IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)
トレイトのハンドル イテレータ。
LoggingBufferHandler
WEAVE_ERROR(* LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)
NotifyExternalEventsDeliveredFunct
void(* NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)
外部イベントがリモートのサブスクライバーに配信されるときに呼び出されるコールバックの関数プロトタイプ。
外部イベントがリモートの登録者に配信されると、エンジンは外部イベント プロバイダに通知を送信します。コールバックには、最後に配信された ID のイベントと、イベントを受け取ったサブスクライバーの ID が含まれます。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
NotifyExternalEventsEvictedFunct
void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)
外部イベントがバッファから強制排除されたときに呼び出されるコールバックの関数プロトタイプ。
外部イベント オブジェクトが送信メッセージ バッファから強制排除されると、エンジンは外部イベント プロバイダに通知を送信します。コールバックには、削除される外部イベントが含まれます。
詳細 | |||
---|---|---|---|
パラメータ |
|
プロパティ辞書キー
uint16_t PropertyDictionaryKey
PropertyPathHandle
uint32_t PropertyPathHandle
PropertyPathHandle は、トレイト インスタンスのルートに関連する WDM パスの一意の 32 ビット数値ハッシュです。
次の 2 つの要素で構成されています。
- スキーマの静的部分にマッピングされる下位の 16 ビットの番号。
- 下位 16 ビットが辞書要素内のパスを参照している場合、上位 16 ビットはその要素に関連付けられた辞書キーを表します。下位の 16 ビットで辞書以外の要素を参照している場合、上位 16 ビットは 0 にする必要があります。
特徴は次のとおりです。
- すべてのトレイトには、独自のプロパティ パス ハンドル スペースがあります。
- どの一意の WDM サブパスパスにも、同じように一意の PropertyPathHandle があります。
- PropertyPathHandles は、IDL からトレイト コンパイラによって自動生成され(現在は手動で作成)、対応するトレイトのヘッダー ファイルで列挙リストとして表されます。
- この構造では、アプリケーション ロジックが WDM パスを直接処理する必要はありません。WDM とのやり取りはこれらのハンドルを通じてのみ行われます。
- 特定の意味を持つパスハンドルには、次の 2 つの予約済み値があります。
- 0 は 'NULL' ハンドル
- 1 は、トレイト インスタンスのルートを指すハンドルを示します。
PropertySchemaHandle
uint16_t PropertySchemaHandle
スキーマのバージョン
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
イベント ID のタイプです。
timestamp_t
uint32_t timestamp_t
タイムスタンプを記述するために使用される、ミリ秒単位の型。
utc_timestamp_t
uint64_t utc_timestamp_t
UTC タイムスタンプを記述するために使用されるタイプ(ミリ秒単位)。
Variables
インスタンス
LoggingManagement sInstance
sLogFileName
char sLogFileName[] = "topazlog"
関数
BdxErrorHandler
void BdxErrorHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, WEAVE_ERROR aErrorCode )
BdxGetBlockHandler
void BdxGetBlockHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aIsLastBlock )
BdxRejectHandler
void BdxRejectHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aReport )
BdxSendAcceptHandler
WEAVE_ERROR BdxSendAcceptHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::BulkDataTransfer::SendAccept *aSendAcceptMsg )
BdxXferDoneHandler
void BdxXferDoneHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer )
BdxXferErrorHandler
void BdxXferErrorHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aXferError )
CreatePropertyPathHandle
PropertyPathHandle CreatePropertyPathHandle( PropertySchemaHandle aPropertyPathSchemaId, PropertyDictionaryKey aPropertyPathDictionaryKey )
EventWriterTLVCopy
WEAVE_ERROR EventWriterTLVCopy( TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
すでにシリアル化された eventdata 要素をイベント バッファに変換するヘルパー関数。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
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 を見つけるユーティリティ関数。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
TraitUpdatableDataSink へのポインタ。ハンドルが存在しない場合や更新できない TraitDataSink を指す場合は NULL。
|
ログイベント
event_id_t LogEvent( const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData )
事前にシリアル化されたフォームからイベントをログに記録します。
関数により、nl::Weave::TLV::TLVReader で表されるイベントがログに記録されます。これは、イベントデータ表現が、nl::Weave::TLV::TLVReader の基盤となるストレージですでにシリアル化されていることを意味します。nl::Weave::TLV::TLVReader には少なくとも 1 つのデータ要素が含まれると想定されています。この要素は構造でなければなりません。リーダーから読み取られた最初の要素は、イベントデータとして扱われ、イベントログに保存されます。イベントデータには、inProfileID と inEventType で識別されるスキーマ内で解釈されるコンテキストタグが含まれている必要があります。最初の要素のタグは無視されます。イベント ロギング システムは、これを eventData タグに置き換えます。
inImportance が LoggingConfiguration で指定されたロギングしきい値を超えると、ログに記録されます。イベントの重要度が現在のしきい値に達していない場合、ドロップされ、結果として生成されるイベント ID として 0
が返されます。
この呼び出しのバリアントは、すべてのデフォルト イベント オプションを暗黙的に指定します。
- イベントのタイムスタンプは、呼び出し時点での現在の時刻になります。
- イベントが発信元のデバイスに関連するものとしてマークされている。
- イベントが他のイベントとは関係なく、スタンドアロンである
- 予定が緊急でないとマークされている
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
event_id_t イベントがログに書き込まれた場合はイベント ID。それ以外の場合は 0。
|
ログイベント
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 には少なくとも 1 つのデータ要素が含まれると想定されています。この要素は構造でなければなりません。リーダーから読み取られた最初の要素は、イベントデータとして扱われ、イベントログに保存されます。イベントデータには、inProfileID と inEventType で識別されるスキーマ内で解釈されるコンテキストタグが含まれている必要があります。最初の要素のタグは無視されます。イベント ロギング システムは、これを eventData タグに置き換えます。
inImportance が LoggingConfiguration で指定されたロギングしきい値を超えると、ログに記録されます。イベントの重要度が現在のしきい値に達していない場合、ドロップされ、結果として生成されるイベント ID として 0
が返されます。
この呼び出しのバリアントにより、呼び出し元は EventOptions
の任意の組み合わせを設定できます。
- timestamp は、0 が呼び出し時点での現在時刻にデフォルトで設定される場合。
- "root" セクション(イベントソースおよびトレイト ID)のセクション。NULL の場合、デフォルトで現在のデバイスが使用されます。イベントは、発信元のデバイスに関連するものとしてマークされます。
- イベント ID をグループ化するための関連イベント ID。関連イベント ID が 0 の場合、そのイベントは他のイベントに関連しないとマークされます。
- 緊急度(デフォルトでは非緊急)が表示されます。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
event_id_t イベントがログに書き込まれた場合はイベント ID。それ以外の場合は 0。
|
ログイベント
event_id_t LogEvent( const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData )
コールバックを介してイベントを記録します。
この関数は、EventWriterFunct として表されるイベントとアプリ固有の appData
コンテキストをログに記録します。この関数はイベント メタデータを書き込み、nl::Weave::TLV::TLVWriter のリファレンスと inAppData
コンテキストを使用して inEventWriter
を呼び出します。これにより、ユーザーコードはイベントデータをイベントログに直接出力できます。この形式のイベント ロギングでは、イベントデータがターゲット バッファに直接シリアル化されるため、メモリ消費が最小限に抑えられます。イベントデータには、inProfileID
と inEventType
で識別されるスキーマ内で解釈されるコンテキストタグが含まれている必要があります。最初の要素のタグは無視されます。イベント ロギング システムは、これを eventData タグに置き換えます。
inImportance が LoggingConfiguration で指定されたロギングしきい値を超えると、ログに記録されます。イベントの重要度が現在のしきい値に達していない場合、ドロップされ、結果として生成されるイベント ID として 0
が返されます。
この呼び出しのバリアントは、すべてのデフォルト イベント オプションを暗黙的に指定します。
- イベントのタイムスタンプは、呼び出し時点での現在の時刻になります。
- イベントが発信元のデバイスに関連するものとしてマークされている。
- イベントが他のイベントとは関係なく、スタンドアロンである
- 予定が緊急でないとマークされている
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
event_id_t イベントがログに書き込まれた場合はイベント ID。それ以外の場合は 0。
|
ログイベント
event_id_t LogEvent( const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions )
コールバックと、オプションを使用してイベントをログに記録します。
この関数は、EventWriterFunct として表されるイベントとアプリ固有の appData
コンテキストをログに記録します。この関数はイベント メタデータを書き込み、nl::Weave::TLV::TLVWriter のリファレンスと inAppData
コンテキストを使用して inEventWriter
を呼び出します。これにより、ユーザーコードはイベントデータをイベントログに直接出力できます。この形式のイベント ロギングでは、イベントデータがターゲット バッファに直接シリアル化されるため、メモリ消費が最小限に抑えられます。イベントデータには、inProfileID
と inEventType
で識別されるスキーマ内で解釈されるコンテキストタグが含まれている必要があります。最初の要素のタグは無視されます。イベント ロギング システムは、これを eventData タグに置き換えます。
inImportance が LoggingConfiguration で指定されたロギングしきい値を超えると、ログに記録されます。イベントの重要度が現在のしきい値に達していない場合、ドロップされ、結果として生成されるイベント ID として 0
が返されます。
この呼び出しのバリアントにより、呼び出し元は EventOptions
の任意の組み合わせを設定できます。
- timestamp は、0 が呼び出し時点での現在時刻にデフォルトで設定される場合。
- "root" セクション(イベントソースおよびトレイト ID)のセクション。NULL の場合、デフォルトで現在のデバイスが使用されます。イベントは、発信元のデバイスに関連するものとしてマークされます。
- イベント ID をグループ化するための関連イベント ID。関連イベント ID が 0 の場合、そのイベントは他のイベントに関連しないとマークされます。
- 緊急度(デフォルトでは非緊急)が表示されます。
詳細 | |||||||||
---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||
戻り値 |
event_id_t イベントがログに書き込まれた場合はイベント ID。それ以外の場合は 0。
|
LogFreeform
event_id_t LogFreeform( ImportanceType inImportance, const char *inFormat, ... )
LogFreeform は、自由形式の文字列をデフォルトのイベント ストリームに出力します。
文字列はデバッグ イベントの構造にカプセル化され、他のログ文字列と構造的に同一になります。イベント プロファイル ID は Nest デバッグ イベントの ID で、イベントタイプは kNestDebug_StringLogEntryEvent
です。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
event_id_t イベントがログに書き込まれた場合はイベント ID。それ以外の場合は 0。
|
LookForElementWithTag
WEAVE_ERROR LookForElementWithTag( const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader )
平文のライター
WEAVE_ERROR PlainTextWriter( TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
デバッグ イベントとして自由形式のテキストを提供するためのヘルパー関数。
デバッグ イベントは、ログ領域と自由形式のテキストを含む構造です。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
平文のライター
WEAVE_ERROR PlainTextWriter( ::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
デバッグ イベントとして自由形式のテキストを提供するためのヘルパー関数。
デバッグ イベントは、ログ領域と自由形式のテキストを含む構造です。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|